结论:
- 大根堆重载小于号,小根堆重载大于号.且自定义函数的大于小于与实际值相反
priority_queue<Node>q;
struct Node
{
int a;
bool operator <(const Node &t)const
{
return a < t.a;//小于号但是优先队列里是从大到小排的序
}
};
priority_queue<Node,vector<Node>,greater<Node>>q;
struct Node
{
int a;
bool operator >(const Node &t)const
{
return a > t.a;//大于号但是优先队列里是从小到大排序
}
};