重载小于运算符<

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;
}

结果:
重载小于运算符<

上一篇:SfMLearner 记录


下一篇:java的数据类型操作 - Queue