Cpp Standard Library 简明教程

C++ Library - <priority_queue>

C++ Priority_queue 是 STL 中的一个容器适配器,它提供了动态优先队列数据结构。它以二进制堆的形式实现,允许高效地插入、删除和访问优先级最高或最低的元素。默认情况下,它会根据比较器函数按降序对元素进行排序。优先级队列常见于 Dijkstra 的最短路径和 Prim 的最小生成树等算法中。

Syntax

以下是 std::priority_queue 的语法。

template <class T, class Container = vector<T>,
class Compare = less<typename Container::value_type> < class priority_queue;

Parameters

  1. T − 包含元素的类型。T 可以用包括用户自定义类型在内的任何其他数据类型替换。

  2. Container − 基础容器对象的类型。

  3. Compare − 用于对 priority_queue 排序的比较对象。它可以是函数指针或可以比较其两个参数的函数对象。

Member types

以下成员类型可作为参数或返回类型,由成员函数使用。

Functions from <priority_queue>

以下是来自 <priority_queue> 的所有方法的列表。

Constructors

Destructor

Member functions