【发布时间】:2016-04-13 22:57:53
【问题描述】:
我有一个关于priority_queue 容器适配器的实现的问题。现在,我知道它在内部使用了 push_heap、pop_heap 函数。这是我的问题:
make_heap 利用 heapify 算法在 O(n) 时间内将一个向量变成一个堆。 C++ STL 中的优先级队列是否有类似的 heapify 操作?我所知道的填充priority_queue 的唯一可能方法是手动添加元素。在 C++ STL 中是否还有一种用于优先队列的批量插入方法。我在 C++ 参考页面上找不到任何内容。
【问题讨论】:
-
只需将向量传递给
priority_queue的构造函数即可。 -
非常感谢。是的,我应该自己解决这个问题。
标签: c++ stl heap priority-queue