/** 用c語言實現順序佇列(採用標誌位解決假溢位問題解決假溢位問題)
* 新增乙個標誌位
*(採用的思路是增加乙個標誌位flag,當入佇列的時候設定flag=1,出佇列的時候設定flag=0,因為佇列滿只可能存在於入佇列的時候,所以多加乙個判斷就可以了)
*/#include#include#includetypedef struct queue
qu;/*
* 初始化順序佇列
*/qu *initqueue(int num)
q->front=0;
q->rear=0;
q->max=num;
//入佇列flag=1否則flag=0
q->flag=0;
q->a=(int *)malloc(sizeof(int)*num);
return q;}/*
* 佇列是否為空(空:返回0 非空:1)
*/int isempty(qu *q)
/* * 入佇列
*/ void push(qu *q,int value)
else }
/* * 出佇列
*/int pop(qu *q)
int value=q->a[q->front];
q->front=(q->front+1)%q->max;
q->flag=0;
return value;}/*
* 檢視隊首元素
*/int peek(qu *q)
int value=q->a[q->front];
return value;}/*
* 佇列中的元素個數
*/int getnum(qu *q)
}int main()
C語言實現順序佇列
有關c語言實現佇列 1.佇列也是一種運算受限制的線性表,它只允許在表的一段 front 進行插入,在另一端 rear 進行刪除。2.佇列亦稱作先進先出的線性表,注意不能稱為後進後出。順序佇列結構描述 struct sq queue typedef struct sq queue sqqueue sq...
c語言資料結構 用標誌位實現迴圈佇列
1 include2 include3 4 define maxsize 10 定義佇列長度56 static int flag 0 定義標誌位 78 typedef struct sqqueue 建立結構體 1314 int initqueue sqqueue q 22 建立空鍊錶 2324 25...
用C語言實現佇列的順序儲存結構
佇列的順序儲存結構算是資料結構裡面比較簡單的一塊知識點了,他的 也很簡單 如下 include define elemtype int define maxsize 30 define false 0 define true 1 define bool char 迴圈佇列 typedef struc...