#include <bits/stdc++.h>
using namespace std;
struct Node {
int size;
int price;
bool operator < (const Node &b) const {
bool ret = this->size < b.size;
if(this->size == b.size) {
ret = this->price > b.price;
}
return ret;
}
};
int main() {
priority_queue<Node> pq;
for (int i = 0; i < 5; i++) {
pq.push(Node{i, 5 - i});
}
while (!pq.empty()) {
Node top = pq.top();
pq.pop();
printf("size:%d price:%d\n", top.size, top.price);
}
return 0;
}
priority_queue(优先队列)
C++ 优先队列示例
于 2022-08-25 09:32:24 首次发布
本文介绍了一个使用 C++ 实现的优先队列示例。通过定义一个结构体 Node,并重载比较运算符来实现自定义类型的优先级排序。在 main 函数中创建并填充了优先队列,最后迭代输出队列中的元素。
356

被折叠的 条评论
为什么被折叠?



