比较优先级队列的类

时间:2017-04-18 15:24:39

标签: c++ stl priority-queue

当我们需要最小优先级队列时,我们将Compare类声明为std:greater。这类似于return obj1 > obj2

任何人都可以详细说明优先级队列如何使用它?插入时应用它?或者在pop()之后将其用于“heapify”。

我们知道在插入时,新元素会尽可能地浮动。因此,如果插入使用更大,那么obj1将是父级?而obj2本身就是新元素?

1 个答案:

答案 0 :(得分:1)

我查找了STL源代码并了解了如何使用Compare函数。以下是链接 http://llvm.org/svn/llvm-project/libcxx/trunk/include/algorithm

keyword:push_heap,sift_up

if (Compare(parent, children))
    do the swap