从PriorityQueue中使元素出队意味着删除优先级最高的元素。我们将具有最高优先级的元素存储在数组的末尾,我们可以简单地弹出它以使其出队。
因此,我们可以如下实现出队功能-
dequeue() { //检查是否为空 if (this.isEmpty()) { console.log("队列下溢!"); return; } return this.container.pop(); }
您可以使用以下命令检查此功能是否正常运行
let q = new PriorityQueue(4); q.enqueue("Hello", 3); q.enqueue("World", 2); q.enqueue("Foo", 8); console.log(q.dequeue()); q.display();
输出结果
这将给出输出-
{ data: 'Foo', priority: 8 } [ { data: 'World', priority: 2 }, { data: 'Hello', priority: 3 }]