在c ++中构造priority_queue
priority_queue<int, vector<int>, greater<int> > pq
int是队列存储的值的类型,比较器更大的是第二个参数
vector<int>
在这做什么?
答案 0 :(得分:3)
第二个参数是队列使用的基础容器。
priority_queue
模板是容器适配器。也就是说,它本身并不提供动态存储,而是适应现有容器以提供所需的接口。
(优先级队列的接口是根据标准库中的make_heap
/ push_heap
/ pop_heap
算法实现的,底层容器需要有合适的迭代器。)