我想要做类似于这样的事情:
priority_queue< pair<int, int>, vector<int>, greater<int> > Q;
如果我要比较的类型是int
,那么这个方法可以正常工作:
priority_queue< int, vector<int>, greater<int> > Q;
然而,显然使用pair<int, int>
时,无法使用标准的>
比较队列中的一对对。我想知道应该怎么做? 我该如何实现重载的>
或者有没有其他方法可以创建一个优先级队列使得最小的pair.second
在队列顶部?