STL学习之优先队列(Priority_queue)(1)
来源:互联网 发布:java雷霆战机2源代码 编辑:程序博客网 时间:2024/06/16 19:38
STL学习之优先队列(Priority_queue)(1)
在学习到数据结构中的栈和队列这一块时,接触到了STL库中的queue有关的函数。
优先队列(priority_queue)是队列(queue)的一种,不过它可以按照自定义的一种方式(数据的优先级)来对队列中的数据进行动态的排序。
在队列(queue)中,有以下几项基本操作:
1.c.pop() : 返回队列头部数据
2.c.push(elem) : 在队列尾部增加elem数据
3.c.pop() : 队列头部数据出队
4.c.empty() :判断队列是否为空
5.c.size():返回队列中数据的个数
由此可见,queue的基本操作与stack(栈)类似。
一、标准库默认使用元素类型的<操作符来确定它们之间的优先级关系。
priority_queue<int> pq;
二、数据越小,优先级越高
priority_queue<int, vector<int>, greater<int> > pq1;
附上一段简单的代码
#include <bits/stdc++.h>using namespace std;int main(){int array[] = {1, 5, 2, 10, 8, 3};priority_queue<int> pq;priority_queue<int, vector<int>, greater<int> > pq1;for (int i = 0; i < 6; i++){pq.push(array[i]);pq1.push(array[i]);}for (int i = 0; i < 6; i++){cout << pq.top() << " ";pq.pop();}cout << endl;for (int i = 0; i < 6; i++){cout << pq1.top() << " ";pq1.pop();}cout << endl;return 0;}
0 0
- STL学习之优先队列(Priority_queue)(1)
- STL之priority_queue(优先队列)
- STL之priority_queue(优先队列)
- STL - priority_queue(优先队列)
- 谁都能看懂的C++ STL之优先队列(priority_queue)
- STL 之 优先队列(priority_queue)
- STL之优先队列priority_queue
- C++STL--priority_queue(优先队列)
- 优先队列(priority_queue)
- priority_queue(优先队列)
- priority_queue(优先队列)
- 优先队列(priority_queue)
- 优先队列(priority_queue)
- 优先队列(priority_queue)
- STL priority_queue 优先队列
- STL priority_queue 优先队列
- STL priority_queue 优先队列
- STL priority_queue优先队列
- 白平衡 matlab 程序
- the resource is not on the build path of a java project
- Windows系统的BAT命令解释说明
- Libgdx之粒子系统
- JSP页面报错,将jsp-api.jar加入到类路径
- STL学习之优先队列(Priority_queue)(1)
- GIT基本概念
- 一张图看懂Touch事件的传递
- 关于DMA的两个小知识点
- 设计模式~单例模式
- Axis2 参数详解
- Linux文本处理
- Android 动画之RotateAnimation应用详解
- OnTimer()函数用于实现定时控制功能