提升优先级队列比较功能
Boost priority queue comparison function
如何使用提升库更改优先级队列上的比较功能?我有一个这样的结构:
struct decreasingOrderMyType
{
bool operator() (const MyType & lhs, const MyType & rhs) const
{
return lhs.value > rhs.value;
}
};
我想用它来比较我的元素。
谢谢!
对于 std::p riority_queue,我将其指定为: std::priority_queue<DistanceTuple, std::vector<DistanceTuple>, SmallestOnTop > pq;
DistanceTuple
是一个std::pair
,SmallestOnTop
是一个函子来比较std::pair
更新:我错了,它们并不相同。提升版本使用命名参数。其工作方式如下:
boost::heap::priority_queue<MyType,
boost::heap::compare<decreasingOrderMyType> > pq;
相关文章:
- 如何改进我的"String"对象比较功能
- 使用不遵循"严格弱排序"的比较功能对列表进行排序
- 如何在C++中使用自定义比较功能对字符串进行排序?
- 标准::地图比较功能
- C++ lower_bound比较功能问题
- 自定义stable_sort比较功能
- 带有额外参数的排序列表以进行比较功能
- 使用自定义比较功能设置相等性
- 相同的比较功能为C++中的排序和优先级队列提供不同的输出
- 使用自定义比较功能对静态多维数组进行排序
- 提升优先级队列比较功能
- 优先级队列中的运算符重载或比较功能C++
- C 比较功能结果
- STD :: SET的有效比较功能
- C++ STL 中排序的自定义比较功能
- 映射与对象键,查找和比较功能
- 具有多种比较功能的单标::地图/多地图
- 如何将unordered_set与比较功能一起使用
- 比较功能不适用于equal_range
- 如何对包含 pair<int,int> 元素的向量进行排序?排序是根据比较功能完成的