JavaScript資料結構:佇列

佇列(Queue)和堆疊(Stack)相似,但插入點和移除點不同。 我們在佇列的一端新增項目,而在另一端移除項目。 這種結構被稱為「先進先出」(First In, First Out,FIFO)。 就像你可以想像的任何佇列,例如在餐廳、舞廳或者等待進入音樂會大廳時。 以下是使用JavaScript實現佇列的可能實作,使用私有類別欄位(Private Class Fields),內部儲存使用陣列: 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....