C++ STL 队列的使用(普通队列,双端队列,优先队列)

下列表格中带‘*’表示括号内无内容
否则括号内需要填要操作的元素
比如:

  • name.pop()
  • name.push(1)
名字普通队列双端队列优先队列
头文件#include <queue>#include<deque>#include <queue>
声明(DateType 为任意数据类型)queue<DateType> namedeque<DateType> namepriority_queue <DateType> name(默认从小到大排序)
取出队首的值*name.front()name.front()
name.back()
name.top()
弹出元素(删掉,不取值)*name.pop()name.pop_back()->弹出队尾name.pop_front()->弹出队首name.pop()
存入元素name.pushname.push_back()->存入队尾name.push_front()->存入队首name.push()
求队列中元素个数name.size()name.size()name.size()

其中,优先队列还能够自定义优先级
这时我们可以传入一个比较函数

struct cmp{
    bool operator ()(int &a,int &b){
        return a<b;
    }
};

priority_queue<int, vector<int>,cmp > Queue;

其中

第二个参数为容器类型

第三个参数为比较函数

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值