C語言 鏈式佇列

2021-09-29 20:25:02 字數 936 閱讀 4003

一、鏈式佇列

// description: 用鏈式儲存方式實現佇列邏輯:鏈式佇列

#include

#include

#include

typedef int datatype;

struct node

;typedef struct

linked_queue;

//初始化佇列空間

linked_queue *init_queue(void)

return q;

}//初始化新節點

struct node *new_node(datatype data)

return new;

}//判斷是否為空

bool queue_empty(linked_queue *q)

//入隊

bool en_queue(linked_queue *q, struct node *new)

else

q->size++; //記錄了當前佇列的元素個數,入佇列需加1

return true;bool singular(linked_queue *q) //判斷佇列是否剛好只剩乙個元素

bool de_queue(linked_queue *q, struct node **p) // 出隊

else

if(p != null) //p如果不為空,*p指向原隊頭元素

else //反之,則釋放原佇列頭元素

q->size--;

return true;//遍歷佇列

void show(linked_queue *q)

printf("\n");int main(void)

else if(ret == 0) }

return 0;

c語言佇列的鏈式儲存

佇列的鏈式儲存的一種實現方法就是簡化版的線性鍊錶 include include typedef struct node 結點結構 node,linklist typedef struct 佇列的鍊錶結構 linkqueue void create queue linklist l 佇列的建立 r ...

C語言實現鏈式佇列

鏈式佇列,簡稱 鏈佇列 即使用鍊錶實現的佇列儲存結構。鏈式佇列的實現思想同順序佇列類似,只需建立兩個指標 命名為 top 和 rear 分別指向鍊錶中佇列的隊頭元素和隊尾元素,如下圖所示 所示為鏈式佇列的初始狀態,此時佇列中沒有儲存任何資料元素,因此 top 和 rear 指標都同時指向頭節點。在建...

鏈式佇列 C語言實現

鏈式佇列的儲存結構 我們知道,佇列是操作受限制的線性表,佇列有隊頭和隊尾,插入元素的一端稱為隊頭,刪除元素的一端稱為隊尾。練市佇列的隊頭指標指向當前佇列的隊頭結點位置,隊尾指標指向佇列的當前隊尾結點位置。對於不帶頭結點的鏈式佇列,出佇列時可直接刪除隊頭指標所指的結點,因此,鏈式佇列不帶頭結點更方便。...