优先队列重载运算符< 以及初始化列表

Posted Neord

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了优先队列重载运算符< 以及初始化列表相关的知识,希望对你有一定的参考价值。

优先队列定义
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;}

};

 

以上是关于优先队列重载运算符< 以及初始化列表的主要内容,如果未能解决你的问题,请参考以下文章

优先队列重载<运算符

运算符优先级

运算符 + 重载 C++

优先队列中运算符重载

简单重载运算符in priority_queue By cellur925

C++语法小记---运算符重载