c++ std::priority_queue使用例子
时间: 2023-09-28 17:07:30 浏览: 112
STL容器实例.pdf
5星 · 资源好评率100%
以下是一个简单的使用std::priority_queue的例子:
```c++
#include <iostream>
#include <queue> // 包含 priority_queue 头文件
using namespace std;
int main() {
// 定义一个最大堆
priority_queue<int> max_heap;
// 插入元素
max_heap.push(10);
max_heap.push(30);
max_heap.push(20);
// 访问堆顶元素
cout << "堆顶元素: " << max_heap.top() << endl;
// 删除堆顶元素
max_heap.pop();
// 访问堆顶元素
cout << "删除堆顶元素后,新的堆顶元素: " << max_heap.top() << endl;
// 获取堆中元素个数
cout << "堆中元素个数: " << max_heap.size() << endl;
// 判断堆是否为空
if (max_heap.empty()) {
cout << "堆为空" << endl;
} else {
cout << "堆不为空" << endl;
}
return 0;
}
```
输出结果:
```
堆顶元素: 30
删除堆顶元素后,新的堆顶元素: 20
堆中元素个数: 2
堆不为空
```
在这个例子中,我们定义了一个最大堆,并向其中插入了三个元素。我们使用top()函数来访问堆顶元素,并使用pop()函数删除堆顶元素。最后,我们使用size()函数来获取堆中元素的个数,使用empty()函数来判断堆是否为空。
阅读全文