c++ stl 大根堆
时间: 2023-11-03 11:01:28 浏览: 177
STL_quene.rar_crowd7oc_优先队列 堆_大根堆_大根对 c++_小根堆
STL(Standard Template Library)中的大根堆是通过使用`priority_queue`容器来实现的。`priority_queue`是一个优先级队列,它根据元素的优先级进行排列,并且最大的元素总是位于队列的顶部。
下面是一个使用STL中的大根堆的示例代码:
```cpp
#include <iostream>
#include <queue>
int main() {
std::priority_queue<int> maxHeap;
// 插入元素
maxHeap.push(5);
maxHeap.push(3);
maxHeap.push(10);
maxHeap.push(1);
// 访问堆顶元素
std::cout << "Top element: " << maxHeap.top() << std::endl;
// 删除堆顶元素
maxHeap.pop();
// 输出剩余元素
while (!maxHeap.empty()) {
std::cout << maxHeap.top() << " ";
maxHeap.pop();
}
return 0;
}
```
输出结果:
```
Top element: 10
5 3 1
```
阅读全文