struct Node{
int w;
bool operator<(Node a)const
{
return a.w<w;
// 从小到大排序
}
}node[5];
优先队列默认大根堆+重载小于运算符=小根堆
#include <bits/stdc++.h>
using namespace std;
struct Node{
int w;
bool operator<(Node a)const
{
return a.w<w;
}
}node[5];
int main()
{
for(int i=0;i<5;i++){
node[i].w = i;
}
priority_queue<Node> pq;
for(int i=0;i<=4;i++){
pq.push(node[i]);
}
while(!pq.empty()){
cout << pq.top().w << endl;
pq.pop();
}
return 0;
}
结果: