資料結構 Java實現佇列的順序儲存和鏈式儲存

2021-09-13 18:22:03 字數 1935 閱讀 3170

佇列的性質:先進先出。

佇列的順序儲存(環形隊):

採用乙個陣列和乙個代表陣列的下標的整型變數實現。

//環形隊(順序隊會造成陣列空間的浪費:如果不想造成空間的浪費

// 可以使用乙個陣列來實現,不需要頭、尾指標,在進隊時

// 重新建立乙個陣列儲存原來的元素和進隊的元素,然後將

// 新陣列賦給舊陣列,該寫法不要對隊的大小做限制。)

//下面是資料結構中的寫法

//棧的順序儲存結構

public

class

myqueue

/** * 判斷隊是否已滿

* @return 隊滿返回true,否則返回false

*/public

boolean

queueisfull()

return

false;}

/** * 判斷隊是否為空

* @return 隊空返回true,否則false

*/public

boolean

queueisempty()

return

false;}

/** * 進隊

* @param element

* @return

*/public

boolean

enqueue

(int element)

else

}/**

* 出隊

* @return

*/public

intdequeue()

throws runtimeexception

else

}}

測試
@test

//佇列的鏈式儲存結構

public

class

mylinkqueue

private datanode front;

// 隊首節點

private datanode rear;

// 隊尾節點,一直指向最後乙個元素

public

mylinkqueue()

/** * 判斷節點是否為空

* @return

*/public

boolean

isempty()

/** * 進隊:採用未插入法,後進隊的元素在後面

* @param element

* @return

*/public

boolean

enqueue

(int element)

else

}/**

* 出隊:出首節點的後節點,因為採用的是尾插入法

* @return

* @throws runtimeexception

*/public

intdequeue()

throws runtimeexception

if(front.next == rear)

else

}}

測試
@test

資料結構順序佇列實現

如題 這是一套完整的可執行的 需要讀者有一定的基礎去閱讀 語言是用c語言實現 在c 環境中編寫 在c 中可直接執行 在c語言中需要改部分標頭檔案和輸出語句 標頭檔案 這要是 的宣告部分 ifndef head define head include using namespace std typed...

資料結構 Java實現佇列

佇列是一種特殊的線性表,特殊之處在於它只允許在表的前端 head 進行刪除操作,而在表的後端 tail 進行插入操作,和棧一樣,佇列是一種操作受限制的線性表。進行插入操作的端稱為隊尾,進行刪除操作的端稱為隊頭。佇列中沒有元素時,稱為空佇列。佇列的資料元素又稱為佇列元素。在佇列中插入乙個佇列元素稱為入...

資料結構 迴圈佇列的順序實現

首先來看看什麼是佇列?佇列是只允許在一端進行插入資料操作,在另一端進行刪除資料操作 的特殊線性表。通常情況下插入資料那一端叫做隊尾,刪除的那一端叫做對頭,佇列具有先進先出的特點。佇列一共有兩種線性儲存方式,一種是順序的一種是鏈式的,順序佇列如圖所示 如果再加入兩個元素就會出現假溢位現象。實際上還剩餘...