详细讲解 利用实际例子 c++有限队列 使用方法
来源:互联网 发布:少儿编程软件 编辑:程序博客网 时间:2024/06/05 10:31
/*
优先队列的方法;
q.push();//进队列
q.pop();出队列
q.top();返回队头
q.empty();判断队列是否为空
q.size();返回队列的长度
*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<queue>
using namespace std;
struct node
{
int x,y,dir,sum;
friend bool operator < (node n1,node n2)
{
return n1.sum>n2.sum; //<为从大到小,>大于从小到大;
}
};
int main()
{
priority_queue<int>q;//普通数据类型 优先级默认 从大到小。
int a[]={1,4,2,5,3};
for(int i=0;i<=4;i++)
{
q.push(a[i]);
}
for(int i=0;i<=4;i++)
{
printf("%d ",q.top());
q.pop();
}
priority_queue<int,vector<int>,greater<int> > q2;//普通数据类型 greater从小到大排序,less从大到小排序;
for(int i=0;i<5;i++)
{
q2.push(a[i]);
}
for(int i=0;i<5;i++)
{
printf("%d ",q2.top());
q2.pop();
}
printf("\n");
priority_queue<node>q3;
for(int i=1;i<=10;i++)
{
node a={1,1,1,i};
q3.push(a);
}
while(!q3.empty())
{ node a=q3.top();
printf("%d ",a.sum);
q3.pop();
}
}
优先队列的方法;
q.push();//进队列
q.pop();出队列
q.top();返回队头
q.empty();判断队列是否为空
q.size();返回队列的长度
*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<queue>
using namespace std;
struct node
{
int x,y,dir,sum;
friend bool operator < (node n1,node n2)
{
return n1.sum>n2.sum; //<为从大到小,>大于从小到大;
}
};
int main()
{
priority_queue<int>q;//普通数据类型 优先级默认 从大到小。
int a[]={1,4,2,5,3};
for(int i=0;i<=4;i++)
{
q.push(a[i]);
}
for(int i=0;i<=4;i++)
{
printf("%d ",q.top());
q.pop();
}
priority_queue<int,vector<int>,greater<int> > q2;//普通数据类型 greater从小到大排序,less从大到小排序;
for(int i=0;i<5;i++)
{
q2.push(a[i]);
}
for(int i=0;i<5;i++)
{
printf("%d ",q2.top());
q2.pop();
}
printf("\n");
priority_queue<node>q3;
for(int i=1;i<=10;i++)
{
node a={1,1,1,i};
q3.push(a);
}
while(!q3.empty())
{ node a=q3.top();
printf("%d ",a.sum);
q3.pop();
}
}
阅读全文
1 0
- 详细讲解 利用实际例子 c++有限队列 使用方法
- C malloc & free 实际例子
- 队列queue的详细讲解
- 队列queue的详细讲解
- 队列queue的详细讲解
- c语言详细讲解!
- Google利用技巧详细讲解
- C#---NUnit详细使用方法
- C#---NUnit详细使用方法
- 优先队列的使用方法+OJ案例讲解
- 详细讲解学习ASP Server对象使用方法
- 详细讲解Java中log4j的使用方法
- 详细讲解Java中log4j的使用方法
- 详细讲解Java中log4j的使用方法
- 详细讲解Oracle SQL*Loader的使用方法
- 详细讲解Java中log4j的使用方法
- 详细讲解Java中log4j的使用方法
- 详细讲解Java中log4j的使用方法
- LinkedList
- Drools6.5使用Drools6.5 Workbench 上的规则
- rabbitMq storm
- MariaDB安装及字符集配置
- 学习C++的一点归纳总结
- 详细讲解 利用实际例子 c++有限队列 使用方法
- PHP生成唯一的激活码转自
- std:weak_ptr 用法小结。
- MyBatis知识三 DAO开发模式
- 百度研发类面试题(C++方向)
- mysql数据库开发常见问题及优化
- Hadoop格式化namenode时候,出现Java异常:URI has an authority component问题的解决
- 如何将APP崩溃率降低到万分之一以下
- struts2实现ajax传输json