JavaScript 数据结构:序列

队列与栈类似,只是插入点和删除点不同。
我们被添加到一个序列的末尾并从另一个序列中删除。
我们称这个时间为先进先出(FIFO)。
就像您能想到的任何队列一样,例如在餐厅、迪斯科舞厅或等待进入 KTV 时。
这是在 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
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
上一篇:js 命名约定 下一篇:ES2020 空连接运算符
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。