JavaScript數據結構:隊列

隊列與堆棧相似,不同之處在於插入點與移除點不同。

我們在隊列的一端添加,然後從另一端刪除。

這次,我們將其稱為先進先出(FIFO)。

就像您可以想到的任何隊列一樣,例如在餐廳,迪斯科舞廳或等待進入音樂廳時。

這是使用以下命令在JavaScript中實現隊列的可能實現私人班級領域,使用數組作為內部存儲:

class Queue {
  #items = []
  enqueue = (item) => this.#items.splice(0, 0, item)
  dequeue = () => this.#items.pop()
  isempty = () => this.#items.length === 0
  empty = () => (this.#items.length = 0)
  size = () => this.#items.length
}

使用方法如下:首先從類中初始化一個對象,然後調用其方法:

  • enqueue()添加項目
  • dequeue()從隊列中取出物品

例子:

const queue = new Queue()
queue.enqueue(1)
queue.enqueue(2)
queue.enqueue(3)
queue.size() //3

queue.dequeue() //1
queue.dequeue() //2
queue.dequeue() //3

免費下載我的JavaScript初學者手冊


更多js教程: