資料結構之佇列篇

2021-09-25 15:21:29 字數 1329 閱讀 8119

關於佇列

實現佇列

佇列的操作

實現佇列介面

/**

* 佇列介面

* @author wbkearly

* @param 佇列中元素型別

*/public

inte***ce

queue

基於array(之前部落格中定義的array類)實現佇列(arrayqueue

/**

* 基於array實現的佇列

* @author wbkearly

* @param 佇列中的元素型別

*/public

class

arrayqueue

implements

queue

/*** 無參建構函式,預設容量capacity=10

*/public

arrayqueue()

@override

public

intgetsize()

@override

public

boolean

isempty()

@override

public

void

enqueue

(e e)

/** * 獲取佇列容量大小

* @return 佇列容量大小

*/public

intgetcapacity()

@override

public e dequeue()

@override

public e getfront()

/** * 過載object類的tostring()方法

*/@override

public string tostring()

} stringbuilder.

("] tail");

return stringbuilder.

tostring()

;}/** * 測試主函式

* @param args 預設引數

*/public

static

void

main

(string[

] args)}}

}

總結:基於array類實現陣列非常簡單和方便。值得注意的是,由於實際操作的是陣列,在我們刪除隊首元素時,實際上時間複雜度為o(n),這是因為陣列之後的元素都要向前移動一位。

資料結構之佇列(炫技篇)

我們已經實現了順序佇列和鏈式佇列,並且也做了優化,那這篇文章到底是幹嘛呢!簡單四個字,復用!第十二個例子,復用佇列的實現 標頭檔案 ifndef squeue h define squeue h typedef void squeue squeue squeue create void squeue...

JackDan資料結構篇之優先佇列

什麼是優先佇列?在最小優先佇列 min priority queue 中,查詢操作用來搜尋優先權最小的元素,刪除操作用來刪除該元素 對於最大優先佇列 max priority queue 中,查詢操作用來搜尋優先權最大的元素,刪除操作用來刪除該元素。優先權佇列中的元素可以有相同的優先權,查詢或刪除操...

資料結構(佇列實現篇)

在資料結構與演算法中,佇列queue是一種受限的線性儲存結構,特殊之處在於它只允許在表的前端front進行刪除操作,而在表的後端rear進行插入操作,和棧一樣,佇列是一種操作受限制的線性表。進行插入操作的端稱為隊尾,進行刪除操作的端稱為隊頭。遵循先進先出fifo的規則。佇列結構示意圖 佇列結構使用 ...