順序迴圈佇列,我採用從頭出 從尾入的方式解決此問題。
首先書寫標頭檔案,定義結構體
#include
#include
#define initsize 10
typedef
int elemtype;
typedef
struct queue
queue;
以下是對順序迴圈佇列的一些功能的實現
void
initqueue
(queue *que)
//初始化
(queue *que)
//擴容
que->front=0;
que->rear=que->size-1;
que->size *=2
;free
(que->data)
; que->data=new_space;
return true;
}bool isfull
(queue *que)
//判滿
bool isempty
(queue *que)
//判空
bool push
(queue *que,elemtype val)
//入隊(從尾入)
} que->data[que->rear]
=val;
que->rear=
(que->rear+1)
%que->size;
return true;
}bool top
(queue *que,elemtype *reval)
//獲取佇列頭的值
bool pop
(queue *que)
//出隊(從頭出)
void
destroyqueue
(queue *que)
//銷毀
迴圈佇列(順序佇列)的實現
迴圈佇列 順序佇列 的實現 include include include include define n 6 定義資料型別 typedef int datatype t 定義結構體 typedef structsequeue t sequeue t sq 建立乙個空的佇列 sequeue t s...
佇列 迴圈佇列 的順序儲存實現
佇列的順序儲存實現 1 佇列 一端進,另一端出 佇列由兩個引數決定,front 頭 rear 尾 頭指標指向頭乙個元素,尾指標指向指向最後乙個元素的下一儲存單元 若陣列長度為n,當元素個數為n 1時就認為佇列已滿。r指向最後乙個空的元素空間。出隊 頭指標往上移動,入隊 尾指標向上移動,故 靜態佇列只...
C 實現迴圈順序佇列(佇列)
佇列同棧相對,前者為先進先出 first in first in 順序隊裡中,使用陣列儲存資料,基本原理同順序線性表和順序棧。由於使用陣列,所以必須事先定義陣列的最大容量maxsize,使用front表示隊頭位置 最先入元素 使用rear表示隊尾元素 最後入元素 這樣每進入乙個元素,rear要自加一...