#include
#define false 0
#define ok 1
#define maxsize 5
//定義乙個佇列結構
typedef
struct sqqueue
sqqueue;
//建立乙個空佇列
void initqueue(sqqueue *l)
//向佇列插入元素
int inqueue(sqqueue *l, int e)
//從佇列出元素
int outqueue(sqqueue *l, int *e)
//檢視佇列所有元素
void seequeue(sqqueue l)
}int main(void)
inqueue(&s, 5);
inqueue(&s, 6);
seequeue(s);
return
0;}
佇列由資料,頭,尾組成,迴圈佇列節省了空間。
迴圈佇列空:front==rear
迴圈佇列滿:(rear+1)%maxsize==front
佇列的線性實現 迴圈佇列
之前說過,如果是單純乙個陣列就很容易造成假溢位,那麼就有人會想到,如果我把乙個陣列看成是乙個環,將最後乙個元素和第乙個元素連上 實際的儲存結構還是陣列,這個不可能連上 那麼是不是就可以解決假溢位了?為了出對入隊方便,設兩個下標 int型 分別指向隊頭front 第乙個元素 和隊尾rear 最後乙個元...
線性結構 迴圈佇列的順序儲存實現
僅供參考 有錯誤望指出 直接寫迴圈佇列 建立 入列 出列 遍歷 佇列的長度 例如清空,銷毀 之類的操作都沒有寫 以後的有時間再補充 一次聽課,看書時,都沒有懂,為什麼,加那麼多 求餘的,下面想想寫寫,沒有加注釋.會補上的.include include include define ok 1 def...
佇列 迴圈佇列 的順序儲存實現
佇列的順序儲存實現 1 佇列 一端進,另一端出 佇列由兩個引數決定,front 頭 rear 尾 頭指標指向頭乙個元素,尾指標指向指向最後乙個元素的下一儲存單元 若陣列長度為n,當元素個數為n 1時就認為佇列已滿。r指向最後乙個空的元素空間。出隊 頭指標往上移動,入隊 尾指標向上移動,故 靜態佇列只...