佇列是特殊的線性表;
隊頭(front):取出資料的一端;
隊尾(rear):放入資料的一端;
迴圈佇列:
1.佇列順序儲存的不足:
避免出現只有乙個元素時,隊頭和隊尾的重合處理麻煩,
引入front指向隊頭元素,rea指向隊尾元素的下乙個位置;
front=rear時,佇列不是還剩乙個元素,而是空佇列;
2.迴圈佇列定義:
把頭尾相接的順序儲存結構稱為迴圈佇列;
判斷佇列滿的條件:
(rear+1)%queuesize==front;
通用的計算佇列長度公式為:
(rear-front+queuesize)%queuesize;
typedef struct sqqueue;
迴圈佇列的入佇列:
int enqueue(sqqueue *q, int e)
迴圈佇列的出佇列:
int dequeue(sqqueue *q, int *e)
C語言指標(八) 佇列
佇列在我們生活中隨處可見,在資料結構中的佇列就是為了解決實際的排隊問題。它同樣關心的是資料的訪問順序,佇列是一種先進先出 fifo 的資料結構。同樣,這樣的資料結構用單向鍊錶實現相比於用陣列實現更加有優勢。include include struct node struct queue struct...
c語言學習筆記十
記憶體與位址 32位x86 從0x0000 0000到0xffff ffff cpu的功能單元 暫存器 register,高速儲存器,像記憶體一樣訪問資料 eax 通用暫存器 ebxecx edxedi ebpeip 程式計數 程式計數器 program counter,指令解碼器 instruct...
c語言學習筆記十
記憶體與位址 32位x86 從0x0000 0000到0xffff ffff cpu的功能單元 暫存器 register,高速儲存器,像記憶體一樣訪問資料 eax 通用暫存器 ebxecx edxedi ebpeip 程式計數 程式計數器 program counter,指令解碼器 instruct...