优先队列讲解
来源:互联网 发布:邪恶帝软件下载 编辑:程序博客网 时间:2024/09/21 06:36
/*程序大意就是在这个优先队列里依次插入10、8、12、14、6,再输出。结果是什么呢?14 12 10 8 6也就是说,它是按从大到小排序的!*/#include<cstdio>#include<queue>using namespace std;priority_queue <int> q;int main(){ q.push(10),q.push(8),q.push(12),q.push(14),q.push(6); while(!q.empty()) printf("%d ",q.top()),q.pop();}/*程序大意就是插入(10,100),(12,60),(14,40),(6,20),(8,20)这五个node。再来看看它的输出:(14,40) (12,60) (10,100) (8,20) (6,80)*/#include<cstdio>#include<queue>using namespace std;struct node{ int x,y; bool operator <(const node & a) const//const的形式也不能改动 { return x<a.x;//从大到小排序 } /* bool operator <(const node &a) const { return x>=a.x;//从大倒小 }*/}k;priority_queue <node> q;int main(){ k.x=10,k.y=100; q.push(k); k.x=12,k.y=60; q.push(k); k.x=14,k.y=40; q.push(k); k.x=6,k.y=80; q.push(k); k.x=8,k.y=20; q.push(k); while(!q.empty()) { node m=q.top(); q.pop(); printf("(%d,%d) ",m.x,m.y); }}//less<int>:14 12 10 8 6//greater<int>:6 8 10 12 14#include<cstdio>#include<queue>using namespace std;priority_queue <int,vector<int>,less<int> > p;priority_queue <int,vector<int>,greater<int> > q;int a[5]={10,12,14,6,8};int main(){ for(int i=0;i<5;i++) p.push(a[i]),q.push(a[i]); printf("less<int>:") while(!p.empty()) printf("%d ",p.top()),p.pop(); pritntf("\ngreater<int>:") while(!q.empty()) printf("%d ",q.top()),q.pop();}
阅读全文
0 0
- 优先队列讲解
- 优先队列讲解
- 优先队列讲解
- 优先队列的使用方法+OJ案例讲解
- HDU 1434 幸福列车 (附优先队列讲解)
- 优先队列
- 优先队列
- 优先队列
- 优先队列
- 优先队列
- 优先队列
- 优先队列
- 优先队列
- 优先队列
- 优先队列
- 优先队列
- 优先队列
- 优先队列
- c 练习
- win7下使用Eclipse编译C文件生成exe
- java学习笔记
- NOIP2016D1T2 天天爱跑步 BZOJ4719 UOJ261
- 文件的复制
- 优先队列讲解
- PHP常量
- java面向对象复习
- linux常用命令学习(二)
- Struts2 环境的搭建
- javascript中return、return true、return false的区别
- D3D视频渲染入门程序.
- MySQL总结(三)
- 5.7