資料結構 佇列

2021-09-24 05:57:51 字數 866 閱讀 2799

概述:實現乙個fifo(先進先出)的佇列

實現思路:

同樣可以用陣列和鍊錶來實現:用陣列實現佇列的弊端和用陣列實現棧的弊端是類似的,不再贅述;用鍊錶實現,通過在尾節點新增元素實現往佇列新增元素,通過從頭節點刪除乙個元素實現從佇列刪除元素,新增和刪除佇列中的元素的效率和佇列資料大小無關。

注意:用鍊錶實現佇列的時候,另一種方式是和上面剛好相反:在頭節點新增資料,而在尾節點刪除資料。由於我們使用的是單鏈表,這樣做的問題是每次刪除乙個元素都要遍歷整個鍊錶,導致刪除操作的效率低下。

實現:

public class myqueue

}/**

* 頭節點

*/private nodefirst;

/*** 尾節點

*/private nodelast;

/*** 佇列大小

*/private int size = 0;

/*** 判斷佇列是否為空

* * @return 佇列是否為空,為空返回true,否則false

*/public boolean isempty()

/*** 返回佇列大小

* * @return 佇列大小

*/public int size()

/*** 向佇列中加入乙個元素(加入到佇列尾部)

* * @param 需加入佇列的元素

*/public void enqueue(t node) else

size++;

}/**

* 從佇列中移除乙個元素(移除頭節點)

* * @return 當前佇列尾部元素

*/public t dequeue() else

}}

資料結構 佇列

一 佇列的迴圈陣列實現。1 初始化 空佇列。令rear front 0。2 入佇列 約定rear指向佇列尾元素的下乙個位置。入佇列時,先判斷佇列是否已滿,而後將array rear x 然後rear 3 出佇列 約定front指向佇列的首元素位置。出佇列時,先判斷佇列是否為空,而後返回隊首元素re ...

資料結構 佇列

資料參考自 資料結構c 語言描述 佇列是一種先進先出的資料結構,這與棧正好相反。下例是簡單的queue實現 queue.h檔案 ifndef queue h define queue h include include 資料元素結構 自定義 struct datatype 佇列元素最大數 const...

資料結構 佇列

code for fun created by dream whui 2015 1 25 include stdafx.h include include using namespace std define true 1 define false 0 define ok 1 define erro...