普通的队列是一种先进先出的数据结构,元素在队列尾追加,而从队列头删除。在优先队列中,元素被赋予优先级。当访问元素时,具有最高优先级的元素最先删除。
头文件:#include<queue>
操作:
- top 访问队头
- empty 队列是否为空
- size 返回队列元素个数
- push 插入元素到队尾
- pop 弹出队头
- swap 交换内容
定义:
1 /* 2 Type 数据类型 3 Container 容器类型(必须是vector,deque等数组实现的容器) 4 Functional 比较方式 5 */ 6 priority_queue<Type, Container, Functional> 7 8 //实例 9 //升序队列 10 priority_queue <int,vector<int>,greater<int> > q; 11 //降序队列 12 priority_queue <int,vector<int>,less<int> >q; 13 14 //greater和less是std实现的两个仿函数(就是使一个类的使用看上去像一个函数。其实现就是类中实现一个operator(),这个类就有了类似函数的行为,就是一个仿函数类了)
原文链接: https://www.cnblogs.com/qinghemo/p/13344482.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;
也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/368713
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!