priority_queue初始化
时间: 2023-11-08 14:05:19 浏览: 122
顺序表的初始化
priority_queue是一个STL容器,它是一个优先级队列,可以用来实现堆。在使用priority_queue之前,需要对其进行初始化。priority_queue的初始化有两种方式:一种是使用默认的构造函数,另一种是使用已有数组对其进行初始化。
使用默认的构造函数初始化priority_queue的语法如下:
priority_queue<type, container, function> pq;
其中,type是存储在队列中的元素类型,container是底层容器类型,默认为vector,function是元素比较函数,默认为less<type>,即大顶堆。
使用已有数组对priority_queue进行初始化的语法如下:
priority_queue<type, container, function> pq(input.begin(), input.end());
其中,input是已有数组,begin()和end()是数组的起始和结束迭代器。
需要注意的是,如果要使用小顶堆,需要将function参数设置为greater<type>。
阅读全文