笔记——优先队列(常用)
来源:互联网 发布:firefly ubuntu 编辑:程序博客网 时间:2024/06/04 18:54
#include <queue>
#include <cstdio>
using namespace std;
struct node
{
friend bool operator< (node n1, node n2)
{
return n1.priority<n2.priority;//<大的优先级高 >小的优先级高
}
int priority;
int value;
};
void solve2(){
priority_queue<node>que;
node b[10];
b[0].priority=6;b[0].value=1;
b[1].priority=9;b[1].value=5;
b[2].priority=2;b[2].value=3;
b[3].priority=8;b[3].value=2;
b[4].priority=1;b[4].value=4;
for(int i=0;i<5;i++)
que.push(b[i]);
while(!que.empty()){
printf("%d %d\n",que.top().priority,que.top().value);
que.pop();
}
}
void solve1(){
/*从小到大*/
priority_queue<int,vector<int>,greater<int> >que;
que.push(5);
que.push(3);
que.push(2);
que.push(4);
que.push(6);
que.push(7);
while(!que.empty()){
printf("%d ",que.top());
que.pop();
}
printf("\n");
}
void solve0(){
/*从大到小*/
priority_queue<int>que;
que.push(5);
que.push(3);
que.push(2);
que.push(4);
que.push(6);
while(!que.empty()){
printf("%d ",que.top());
que.pop();
}
printf("\n");
}
int main()
{
solve0();
solve1();
solve2();
}
#include <cstdio>
using namespace std;
struct node
{
friend bool operator< (node n1, node n2)
{
return n1.priority<n2.priority;//<大的优先级高 >小的优先级高
}
int priority;
int value;
};
void solve2(){
priority_queue<node>que;
node b[10];
b[0].priority=6;b[0].value=1;
b[1].priority=9;b[1].value=5;
b[2].priority=2;b[2].value=3;
b[3].priority=8;b[3].value=2;
b[4].priority=1;b[4].value=4;
for(int i=0;i<5;i++)
que.push(b[i]);
while(!que.empty()){
printf("%d %d\n",que.top().priority,que.top().value);
que.pop();
}
}
void solve1(){
/*从小到大*/
priority_queue<int,vector<int>,greater<int> >que;
que.push(5);
que.push(3);
que.push(2);
que.push(4);
que.push(6);
que.push(7);
while(!que.empty()){
printf("%d ",que.top());
que.pop();
}
printf("\n");
}
void solve0(){
/*从大到小*/
priority_queue<int>que;
que.push(5);
que.push(3);
que.push(2);
que.push(4);
que.push(6);
while(!que.empty()){
printf("%d ",que.top());
que.pop();
}
printf("\n");
}
int main()
{
solve0();
solve1();
solve2();
}
阅读全文
0 0
- 笔记——优先队列(常用)
- ACM常用模板——数据结构——优先队列(堆)
- LA3135——Argus(优先队列)
- POJ——2431(优先队列)
- 数据结构——优先队列(堆)
- 优先队列——二项队列(binominal queue)
- 栈、队列、优先队列笔记
- 优先队列(堆)优先级设置笔记
- 优先队列(堆)笔记 c++
- 排序算法——优先队列(基于堆得优先队列)
- 【数据结构——优先队列】优先队列的各种运用
- 优先队列——代码
- Sequence——优先队列
- 优先队列——HDU1873
- 优先队列——左式堆
- stl——优先队列
- 水题——优先队列
- 【数据结构】—— 优先队列
- 理解restful架构
- 数字碰撞
- nodejs的cookie和session
- 不可重入锁/自旋锁、可重入锁
- 成为java高级工程师需要什么
- 笔记——优先队列(常用)
- 斗鱼大数据的玩法
- 星期转换Date格式错误
- Hdu_6166多源多汇最短路
- (lintcode)第454题 矩阵面积
- 【bzoj2049】[Sdoi2008]Cave 洞穴勘测
- HDU-6162---Ch’s gift (树链剖分+离线)(2017多校9)
- Echarts使用及动态加载图表数据 折线图X轴数据动态加载
- python logging