對於一開始的佇列的儲存結構混了半天腦袋
後來還是乖乖參考嚴奶奶裡面的**修改了一下。。終於沒錯了
回頭要梳理這個結構體和結構體指標關係!
1、佇列的鏈式儲存
實際上是乙個同時帶有隊頭指標和隊尾指標的單鏈表
頭指標指向隊頭結點,尾指標指向隊尾結點。
特別適於資料元素變動比較大的情形,如果程式中要使用多個佇列,最好使用鏈式佇列
有乙個很大的優點是不會出現佇列滿和溢位的問題
2、**實現
1 #include2 #include33、實現截圖using
namespace
std;
4#define ture 1
5#define false 0
6#define maxsize 50
7#define listincreament 10
8#define ok 1
9#define error -3
10#define overflow -2
11 typedef int
status;
12 typedef int
elemtype;
13/*
儲存型別的定義
*/14 typedef struct
lnode
15 queue;
19 typedef struct ptr //
鏈式佇列的隊頭指標和隊尾指標的定義
20 linkqueue;
2324
/*佇列的初始化
*/25
void initqueue(linkqueue *q)
2633
/*隊判空
*/34
bool isempty(linkqueue *q)
3539
/*入隊
*/40
int enqueue(linkqueue *q,int
x)41
49/*
出隊*/
50int dequeue(linkqueue *q,int &x)
5165
66int
main()
6777 cout<
78 cout<
now show you the data in the queue:";
79while(!isempty(q))
8085
86return0;
87 }
線性表的鏈式儲存
此方法雖然簡單,但是真寫起來太複雜了。線性表的鏈式儲存 include include struct lnode 線性表的初始化 void init l lnode l 線性表的後插建立 void create l1 lnode l n next null 線性表的後插建立 void create ...
線性表的鏈式儲存
引言 一 單鏈表 相較於順序儲存用連續的儲存單元儲存,單鏈表採用鏈式儲存結構,用一組位址任意的儲存單元儲存資料元素。特點 1 儲存單元可以是不連續的,即邏輯結構與物理結構可以不相同 2 元素用結點儲存,每個結點由元素值和下乙個元素的位址構成 3 單鏈表是由每個結點的指標域按照邏輯次序相互連線而成的。...
線性表的鏈式儲存
include include include typedef int elemtype typedef struct nodenode,nodeptr 鍊錶節點 typedef struct listlist,listptr 鍊錶,頭結點為0位置 listptr initlist 初始化鍊錶 vo...