优先队列:
- 昨天看了二叉堆,今天又看了一下优先队列。
- 对于默认情况:
priority_queue<int> que;
此时堆顶是优先级最高的元素,由于堆内是int型数据,也就是堆顶是最大的数字。但是如果我们在定义的时候priority_queue<int, vector<int>, greater<int> > que;
这样,堆顶就会使优先级最小的元素。
相对应的,priority_queue<int, vector<int>, less<int> >que;
这样与默认情况一致。 - 倘若我们要自定义一些比较规则,比如我们是要根据数字其对应的价值来排序,我们需要重载运算符。这一块暂时不大懂。找了一个博客:重载运算符的方法。