佇列的鏈式儲存稱為鏈式佇列。鏈式佇列就是乙個特殊的單鏈表,對於這種特殊的單鏈表,它的插入和刪除操作規定在單鏈表的不同端進行。鏈式佇列的隊首和隊尾指標分別用front和rear表示。
鏈式佇列要掌握以下基本操作:
1、建立乙個空的鏈式佇列
2、判斷鏈式佇列是否為空
3、輸出鏈式佇列各個結點的值
4、取得鏈式佇列的隊首的結點值
5、對鏈式佇列中插入乙個值為x的結點
6、刪除鏈式佇列中隊首節點
#ifndef lnkqueue_h_included
#define lnkqueue_h_included
#include #include typedef struct link_node
n;typedef struct
queue;
/*建立乙個空的鏈式佇列*/
queue *init()
/*判斷鏈式佇列是否為空*/
int isempty(queue *qu)
/*取得鏈式佇列隊首結點值*/
int read (queue *qu)
return (qu->front->info);
}/*輸出鏈式佇列各結點的值*/
void display (queue *qu)
else }
}/*向鏈式佇列中插入乙個值為x的結點(隊尾插入)*/
queue *insert(queue *qu,int x)
else
return qu;
}/*刪除鏈式佇列中的隊首結點*/
queue *dele(queue *qu)
qu->front=q->next;
free(q);
return qu;
} #endif // lnkqueue_h_included
#include "stdio.h"
#include "lnkqueue.h"
int main ()
if(isempty(qu))
else
display (qu);
printf("\n鏈式佇列的隊首結點值為:%d\n",read (qu));
printf("進行插入操作,請輸入要插入的數:");
scanf("%d",&x);
qu=insert(qu,x);
display(qu);
printf("\n進行刪除操作後:\n");
c語言資料結構實現 鏈式佇列
鏈式佇列由環形鍊錶實現,通過煉表頭和鍊錶尾的操作,完成了隊列入列出列的功能。如圖所示,空佇列時至少需要乙個空節點,表示為佇列頭和佇列尾,相當於哨兵的作用 入列 新增節點插入到佇列尾,並更新 tail 指標 出列 更新 head 位置,釋放原來 head節點,返回現有位置的 data 相關資料結構 s...
C語言實現資料結構 鏈式佇列
define elemtype int typedef struct queuenode qnode typedef struct linkqueue linkqueue void initqueue linkqueue q 因為是鍊錶所以不需要判斷隊滿 void enqueue linkqueue...
資料結構 佇列的鏈式實現
1 佇列的鏈式儲存表示 佇列的鏈式儲存結構簡稱為鏈佇列,它是限制在表頭進行刪除操作和表尾進行插入操作的單鏈表。需要兩類不同的結點 資料元素結點,佇列的隊首指標和隊尾指標的結點 指標結點型別定義 typedef struct link queue linkqueue 2 鏈隊運算及指標變化 鏈隊的操作...