双端队列
来源:互联网 发布:好看的棒球服淘宝店 编辑:程序博客网 时间:2024/06/09 03:16
4:双端队列
- 总时间限制:
- 1000ms
- 内存限制:
- 65535kB
- 描述
定义一个双端队列,进队操作与普通队列一样,从队尾进入。出队操作既可以从队头,也可以从队尾。编程实现这个数据结构。
- 输入
- 第一行输入一个整数t,代表测试数据的组数。
每组数据的第一行输入一个整数n,表示操作的次数。
接着输入n行,每行对应一个操作,首先输入一个整数type。
当type=1,进队操作,接着输入一个整数x,表示进入队列的元素。
当type=2,出队操作,接着输入一个整数c,c=0代表从队头出队,c=1代表从队尾出队。
n <= 1000 - 输出
- 对于每组测试数据,输出执行完所有的操作后队列中剩余的元素,元素之间用空格隔开,按队头到队尾的顺序输出,占一行。如果队列中已经没有任何的元素,输出NULL。
- 样例输入
251 21 31 42 02 161 11 21 32 02 12 0
- 样例输出
3NULL
#include<iostream>#include<cmath>#include<cstring>#include<algorithm>#include<iomanip>#include<queue>#include<stack>#include<vector>#include<set>#include<map>using namespace std;int n,t,type,c;int a[1005]={0};int Top=0,Back=0;int main(){cin>>t;while(t--) {Top=0;Back=0;cin>>n;while(n--){cin>>type>>c;if(type==1){a[Back++]=c; }else{if(c==0){Top++;}else{Back--;}}}if(Top==Back){cout<<"NULL"<<endl;}else{for(int i=Top;i<Back;++i){cout<<a[i]<<" ";}cout<<endl; }}return 0;}
阅读全文
0 0
- 队列,优先队列,双端队列
- 队列、双端队列与优先队列
- Java 模拟队列(一般队列、双端队列、优先级队列)
- 栈,队列,双端队列
- 队列与双端队列
- 数据结构(队列):双端队列
- [zz]栈和队列,双端队列
- 队列的应用:双端队列
- 队列Queue、双端队列Deque
- nyoj1117 鸡蛋队列 (双端队列,deque)
- Java队列Queue、双端队列Deque
- 四.队列与双端队列
- java队列Queue、双端队列Deque
- 队列Queue、双端队列Deque
- 队列Queue、双端队列Deque
- 单调栈、双端队列、单调队列
- java-队列,双端队列、栈
- 栈和队列、双端队列
- opencv中的开运算,闭运算,形态学梯度,顶帽和黑帽
- USACO 2017 US Open Contest, Platinum Problem 3. COWBASIC
- Struts基本执行流程
- 迭代地删除文件夹及其下的所有文件
- 日语入门学习,五十音图日语基础知识
- 双端队列
- 三种简单排序
- 剑指offer面试题4
- java应用中Pattern和Matcher的使用
- muduo源码学习(17)-定时器实现
- Linux
- iOS百度地图 定位,获取当前经纬度
- macvlan 网络隔离和连通
- 小程序五彩圈代码,记录