#include <iostream>
#include <queue>
#include <vector>
using namespace std;
int main() {
// 定义一个整数类型的优先队列,默认是最大堆
priority_queue<int> pq;
// 向优先队列中插入元素
pq.push(10);
pq.push(30);
pq.push(20);
pq.push(5);
// 输出优先队列的顶部元素(最大值)
cout << "Top element is: " << pq.top() << endl;
// 弹出顶部元素
pq.pop();
// 再次输出顶部元素
cout << "Top element after pop is: " << pq.top() << endl;
// 检查优先队列是否为空
if (!pq.empty()) {
cout << "Priority queue is not empty." << endl;
}
// 获取优先队列中的元素个数
cout << "Size of priority queue is: " << pq.size() << endl;
return 0;
}
priority_queue<int> pq;
:定义了一个整数类型的优先队列,默认情况下,它是最大堆(即每次弹出的是当前队列中的最大值)。pq.push(value);
:将一个元素插入到优先队列中。pq.top();
:返回优先队列中的最大元素(对于最大堆),但不移除它。pq.pop();
:移除优先队列中的最大元素。pq.empty();
:检查优先队列是否为空,返回 true
表示空,false
表示非空。pq.size();
:返回优先队列中的元素个数。这个例子展示了如何使用 C++ 的 priority_queue
来管理一个动态的、按优先级排序的元素集合。
上一篇:c++绝对值
下一篇:c++开发
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站