數據結構之隊列
-
隊列的定義
- 隊列是一種特殊的線性表,只允許在表的頭部進行刪除操作,在表的尾部進行插入操作的線性數據結構,這種結構就叫做隊列;另外其還有先進先出,后進后出的特征。
- 說到線性結構,得先了解一下數據的邏輯結構,數據的邏輯結構分為線性結構、集合結構、樹形結構和圖形結構,如下圖所示,棧是一種特殊的線性表,是線性結構的一種。
-
JavaScript => 數據結構之隊列結構的構造函數 (node環境)
/**
* @description 數據結構之隊列結構的構造函數
*/
module.exports = function Queue() {
// 初始化隊列倉庫
const queue = []
// 入列
this.enqueue = item => queue.push(item)
// 出列
this.dequeue = () => queue.shift()
// 獲取列頭
this.head = () => queue[0]
// 獲取列尾
this.tail = () => queue[queue.length - 1]
// 列的大小
this.size = () => queue.length
// 清空列
this.clear = () => queue = []
}