1.2 用两个队列实现一个栈
来源:互联网 发布:oracle认证 java 编辑:程序博客网 时间:2024/06/10 09:07
a是专职进出栈的,b只是个中转站。元素集中存放在一个栈中,但不是指定(a 或 b)。
#include <iostream>#include <queue>using namespace std;//入栈操作void pushQueue(queue<int> &a, queue<int> &b, int num){ if(!a.empty()) //若队列a不为空 a.push(num); else b.push(num);}//出栈操作void popQueue(queue<int> &a, queue<int> &b){ //若队列a不为空,则将a中元素依次入队到b中 //保留a中最后一个元素出队列,即出栈 if(!a.empty()) { while(a.size()>1) { b.push(a.front()); a.pop(); } cout<<a.front()<<endl; a.pop(); } //若队列b不为空,则将b中元素依次入队到a中 //保留b中最后一个元素出队列,即出栈 if(!b.empty()) { while(b.size()>1) { a.push(b.front()); b.pop(); } cout<<b.front()<<endl; b.pop(); }}int main(){ queue<int> a, b; pushQueue(a, b, 1); pushQueue(a, b, 2); pushQueue(a, b, 3); pushQueue(a, b, 4); popQueue(a, b); popQueue(a, b); popQueue(a, b); popQueue(a, b); return 0;}
0 0
- 1.2 用两个队列实现一个栈
- 用两个栈实现队列 & 两个队列实现一个栈
- 两个栈实现队列&&用两个队列实现一个栈
- 用两个栈实现一个队列
- 用两个栈实现一个队列
- 用两个栈实现一个队列
- 用两个队列实现一个栈
- 用两个栈实现一个队列功能
- 用两个栈实现一个队列
- 用两个队列实现一个栈
- 用两个栈实现一个队列
- 用两个队列实现一个栈
- 用两个栈来实现一个队列
- 用两个栈实现一个队列功能
- 用两个队列实现一个栈
- 用两个队列实现一个栈
- 用两个栈实现一个队列
- 用两个栈实现一个队列
- insmod: error inserting '***.ko': -1 Invalid parameters 真正原因以及解决方法
- 微信小程序-出现脚本错误或者未正确调用 Page()
- Oracle数据库动态注册和参数local_listener的使用
- box-shadow如何显示在它后面元素上面?
- Ubuntu网络配置——vlan+bonding
- 1.2 用两个队列实现一个栈
- java SLF4J 使用其他的 log框架
- MySQL在线学习1
- 蓝牙a2dp协议源码分析
- UI-Grid表格元素中多个空格显示为一个空格的解决办法
- suse linux 常用命令
- 关于在字符串中获得所有的回文子序列的数量
- ver0.83--init.m
- Spring+Velocity+Mybatis入门(step by step)