优先队列1

优先队列

C++中的优先队列是由二叉堆实现的。 默认是使用大根堆实现。

优先队列的基本操作 :

        empty()   如果队列为空返回真

        pop()       删除队顶元素

        push()     入队一个元素

        size()      返回优先队列中拥有的元素个数

        top()        返回优先队列队顶元素


1.3.1 priority_queue<int> 

 是默认的大根堆实现,top()是当前优先队列的最大值。

1.3.2  priority_queue<int,vector<int>,greater<int>>

是最小值的优先队列,top() 是当前优先队列的最小值。

1.3.3 priority_queue<int,vector<int>,less<int>>

是最大值的优先队列,top() 是当前优先队列的最大值。