队列与堆栈类似,只是插入点与移除点不同。
我们在队列的一端添加,从另一端移除。
这一次,我们称之为先进先出(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
}
下面是如何使用它:首先从类中初始化一个对象,然后调用它的方法。
例如:
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