priority_queue遍历打印
时间: 2023-07-22 13:05:37 浏览: 109
编写优先队列数据(priority_queue)
5星 · 资源好评率100%
要遍历打印一个 `priority_queue`(优先队列),可以使用一个循环来逐个访问队列中的元素,并将它们打印出来。注意,`priority_queue` 是一个容器适配器,它没有提供迭代器来直接访问元素,所以我们需要先将元素取出来,然后再进行打印。
下面是一个示例代码,演示了如何遍历打印一个 `priority_queue`:
```cpp
#include <iostream>
#include <queue>
int main() {
std::priority_queue<int> pq;
// 添加一些元素到优先队列
pq.push(5);
pq.push(2);
pq.push(8);
pq.push(1);
pq.push(10);
// 遍历打印优先队列中的元素
while (!pq.empty()) {
std::cout << pq.top() << " "; // 打印队列的顶部元素
pq.pop(); // 弹出队列的顶部元素
}
return 0;
}
```
这段代码首先创建了一个 `priority_queue` 对象 `pq`,并向其中添加了一些整数元素。然后,通过循环访问队列的顶部元素,打印它们并将其弹出队列,直到队列为空。
运行这段代码将输出:`10 8 5 2 1`,这是按照优先级从高到低的顺序打印出的元素。
希望这可以帮助到你!如果有任何进一步的问题,请随时提问。
阅读全文