头文件:#include<deque>


构造方法:

①、创建一个没有任何元素的双端队列:deque<type> deq

②、用另一个类型相同双端队列初始化该双端队列:deque<type> deq(otherDeq)

③、初始化一个固定size的双端队列:deque<type> deq(size)

④、初始化n个相同元素的双端队列:deque<type> deq(n, element)

⑤、初始化双端队列中的某一段元素,从begin 到 end-1:deque<type> deq(begin, end)


操作:

①、赋值n个元素的拷贝给双端队列:deq.assign(n,elem)

②、赋值一段迭代器的值给双端队列:deq.assign(beg,end)

③、添加一个元素在开头(结尾同理):deq.push_front(elem)

④、删除第一个元素(结尾同理):deq.pop_front()

⑤、取固定位置的元素:deq.at(index)

⑥、取固定位置的元素:deq[index]

⑦、返回第一个元素(不检测容器是否为空):deq.front()

⑧、返回最后一个元素(不检测容器是否为空):deq.back()


例题:

HUD6375 度度熊学队列

#include<bits/stdc++.h>

using namespace std;
#define mem(a,b) memset(a,b,sizeof(a))
const int maxn=15e4+;
int n,m,w;
map<int,deque<int> > a;
void read(int &x)
{
char ch = getchar();x = ;
for (; ch < '' || ch > ''; ch = getchar());
for (; ch >='' && ch <= ''; ch = getchar()) x = x * + ch - '';
}
int main()
{
int i,j;
while(scanf("%d%d",&n,&m)!=EOF){
for(i=;i<=n;i++) a[i].clear();
int ki,u,v;
while(m--){
read(ki);
if(ki==){
read(u),read(w),read(v);
if(w==) a[u].push_front(v);
else a[u].push_back(v);
}
else if(ki==){
read(u),read(w);
if(a[u].empty()){
printf("-1\n");
}
else{
if(w==){
printf("%d\n",a[u].front());
a[u].pop_front();
}
else{
printf("%d\n",a[u].back());
a[u].pop_back();
}
}
}
else{
read(u),read(v),read(w);
if(w){
a[u].insert(a[u].end(),a[v].rbegin(),a[v].rend()),a[v].clear();
}
else a[u].insert(a[u].end(),a[v].begin(),a[v].end()),a[v].clear();
}
}
}
return ;
}

最新文章

  1. cocoapod-使用cocoapod安装AFNetworking3.0
  2. NSTimer(定时器)
  3. i = i++;
  4. Android SwitchButton(滑动开关)
  5. 自学Zabbix3.5.2-监控项item-types监控类型
  6. 【JDBC 笔记】
  7. 【git】idea /git bash命令 操作分支
  8. JS及相关控件
  9. Django构建简介
  10. 77 Linux commands and utilities you&#39;ll actually use
  11. 主机使用代理上网,虚拟机centos7如何连外网
  12. PID控制動手玩玩看
  13. weblogic 乱码
  14. Mybatis:通过MapperScannerConfigurer进行mapper扫描
  15. 893. Groups of Special-Equivalent Strings 奇数偶数位上的相同数
  16. day05今日学习总结:字符串类型
  17. Dubbo -- 系统学习 笔记 -- 示例 -- 负载均衡
  18. [转帖]IPV6取代IPV4之路 为何道阻且长?
  19. 真机调试watch的一系列bug
  20. oracle使用已有vid快速新建虚拟机

热门文章

  1. Codeforces 1197 E (dp+sort+二分) (Rust)
  2. Linear Regression and Gradient Descent
  3. Using Tensorflow SavedModel Format to Save and Do Predictions
  4. html+css+js实现简单登陆注册页面
  5. Hibernate的dtd文件和properties文件
  6. Django Rest Framewoek
  7. 微信、qq网页二次分享
  8. vue.js(09)--v-for中的key
  9. 20180119-文件操作open用法
  10. shell根据系统当前的时间向用户输出问候信息