資料結構那點事 佇列(順序結構)

2021-08-28 13:01:19 字數 968 閱讀 8740

#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...