优先队列定义
priority_queue<int,
vector<int>, greater<int> >pq;
优先队列重载<运算符
在结构体中定义一个
friend bool operator<(node n1,node n2)
return n1.elem>n2.elem;
这是根据node结构体中的elem升序构建的一个操作符
如果想要降序就把>换成<
初始化列表
struct heap {
int id;
int dist;
heap () {}
heap (int _id, int _dist) : id
(_id), dist (_dist) {}
bool operator < (const heap
&a) const
{return dist >
a.dist;}
};
时间: 2024-10-08 23:51:51