格式一:
struct HeapNode
{
int u,d;
friend bool operator < (HeapNode n1,HeapNode n2)
{
return n1.d>n2.d //按照d进行升序排列,把>改为<为降序;
}
};
priority_queue<HeapNode> Q;
格式二:
struct HeapNode
{
int u,d;
friend bool operator < (const HeapNode& rhs) const
{
return d>rhs.d;//按照d进行升序排列,把>改为<为降序;
}
};
priority_queue<HeapNode> Q;
另附一位大佬对重载优先队列的理解:
http://blog.csdn.net/zzycsx/article/details/47851737