#includeusing namespace std;
/**********************
佇列的順序表現形式於鍊錶的順序的表現形式相同
在佇列中比較重要的是對佇列的空滿的判斷,以及佇列長度的計算
首先,空滿的判斷
1.定義flat,在當為空佇列時,即front==rear ,flat=0;
在當為滿佇列時,即front==rear ,flat=1;
2.比較常用的方法:總是在佇列滿時,陣列中還有乙個空單元,(rear+1)%queuesize==front
其次, 佇列長度的判斷
(rear-front+queuesize)%queuesize
**********************/
//佇列的鏈式儲存結構
#define maxsize 10
#define ok 1
#define error 0
typedef int selemtype;
typedef int status;
typedef struct
squeue;
//初始化
status initqueue(squeue *s)
//求佇列的長度
status queuelength(squeue *s,selemtype *e)
//入佇列
status enqueue(squeue *s,selemtype e)
//出佇列
status dequeue(squeue *s,selemtype *e)
int main()
int h;
int e=1;
queuelength(&s,&e);
cout<<"佇列元素:";
while(s.front!=s.rear)
cout<}
資料結構那點事 佇列(鏈式結構)
includeusing namespace std typedef int qeueue define ok 1 define error 0 typedef int qelemtype typedef int status 佇列的鏈式結構 在佇列的鏈中,是使用類似於有頭節點的鍊錶,所以在插入,或...
資料結構那點事 線性表(順序表)
includeusing namespace std 線性表的資料結構 define maxsize 20 typedef int elemtype typedef struct int length sqlist define ok 1 define error 0 define true 1 d...
資料結構順序佇列
佇列是一種特殊的 線性表,特殊之處在於它只允許在表的前端 front 進行刪除操作,而在表的後端 rear 進行插入操作,和棧一樣,佇列是一種操作受限制的線性表。進行插入操作的端稱為隊尾,進行刪除操作的端稱為隊頭。順序佇列 ifndef sqqueue h define sqqueue h incl...