队列使用
0.预备
#include <queue>
队列是一种先进先出的数据结构
优先队列默认先大后小(可重载运算符)
1. 定义
普通队列: queue<数据类型>名字;
优先:priority_queue<数据类型>名字;
2.操作
p.push(a);//将a压入队列
p.pop();//弹出队首
p.top();//返回队首
p.empty();//检查队列是否为空
p.size();//返回元素个数
p.back();//返回末尾元素
3.优先队列一种写法
priority_queue <int,vector<int>,less<int> > p;
priority_queue <int,vector<int>,greater<int> > q;//先小后大
4.重载运算符
struct {
int m;
bool opeartor < (const node &a) const
{
return a.m<m;
}
}//先小