窥视PriorityQueue意味着获取具有最高优先级的值而不删除它。因此我们可以如下实现偷看功能
peek() { if (isEmpty()) { console.log("队列下溢!"); return; } return this.container[this.container.length - 1]; }
您可以使用以下命令检查此功能是否工作正常:
let q = new PriorityQueue(4); q.enqueue("Hello", 3); q.enqueue("World", 2); q.enqueue("Foo", 8); console.log(q.peek()); q.display();
输出结果
这将给出输出-
{ data: 'Foo', priority: 8 } [ { data: 'World', priority: 2 }, { data: 'Hello', priority: 3 }, { data: 'Foo', priority: 8 } ]
正如您在此处看到的,它peek()
与出队不同,因为它仅返回前值而不删除它。