佇列的鏈式儲存結構及其實現

2021-08-21 17:35:56 字數 1288 閱讀 5695

佇列也是一種特殊的線性表,只允許在一端進行插入操作,在另一端進行刪除操作。允許插入的一段為對尾,允許刪除的一端為隊頭。本次記錄的是佇列的鏈式儲存結構以及實現。該儲存結構有兩個指標,乙個指向頭節點,稱為頭指標(front);乙個指向隊尾,稱為尾指標(rear)。當front==rear時,表示空佇列。當需要在佇列中插入元素時,需要將隊尾結點指向新插入的結點,然後將尾指標指向新插入的結點。當要在佇列中進行刪除操作時,只需讓頭指標指向隊頭結點的下乙個結點即可。實現**如下:

#include #includeusing namespace std;

typedef struct qnode //定義乙個連佇列的結點

qnode;

typedef struct //定義鏈佇列的資料結構

linkqueue;

// 構造乙個空佇列q

linkqueue *initqueue(linkqueue *q)

// 元素入隊

linkqueue *enqueue(linkqueue *q, int e)

return q;

}//元素出隊

linkqueue *dequeue(linkqueue *q)

free(p);

}return q;

}//返回隊頭元素

void getqhead(linkqueue *q)

cout<

}//列印。帶頭結點,真正儲存元素的位置從頭結點下一位置(隊頭)開始!!!

佇列 鏈式佇列及其實現

一 1 採用鏈式儲存結構的佇列稱為鏈佇列。2 佇列採用 front 和rear 分別指向佇列的頭 尾兩個節點。3 鏈式佇列採用鏈式結構來儲存佇列中的所有元素,該佇列允許新增無限多個元素,鏈式佇列無佇列滿的問題。二 實現 public class linkqueue public node t dat...

佇列的鏈式儲存結構及實現

佇列的鏈式儲存結構其實就是線性表的單鏈表,只不過它只能尾進頭出,也稱為鏈佇列。為了操作方便講隊頭指標指向鏈佇列的頭結點,而隊尾指標指向終端節點。空佇列是這樣 下面使用 演示 include include include typedef struct node node,pnode typedef ...

佇列的鏈式儲存結構以及實現

佇列的鏈式儲存結構,其實就是線性表的單鏈表,只不過它只能尾進頭出而已,通常簡稱為鏈佇列。為了操作上的方便,將隊頭指標指向鏈佇列的頭結點,隊尾指標指向終端結點。當隊列為空時,front和rear都指向頭結點。鏈佇列的結構定義如下所示 typedef int qelemtype qnode代表佇列中元素...