剑指offer--两个栈生成队列
来源:互联网 发布:实时数据监控 编辑:程序博客网 时间:2024/06/06 03:47
题目:用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。
思路:
进栈函数直接让stack1进栈
出栈时,当stack2 不为空时,pop stack2, 为空时,把stack1的内容复制给stack2,当二个栈为空时,队列为空
代码如下:
class Solution{public: void push(int node) { stack1.push(node); } int pop() { if(stack2.empty()){ while(!stack1.empty()){ stack2.push(stack1.top()); stack1.pop(); } } if(stack2.empty()){ return 0; } int result = stack2.top(); stack2.pop(); return result; } private: stack<int> stack1; stack<int> stack2;};
0 0
- 剑指offer--两个栈生成队列
- [剑指offer]用两个栈实现队列
- 【剑指offer】两个栈实现一个队列
- 【剑指offer】两个队列实现一个栈
- 【剑指offer】用两个栈实现队列
- 剑指offer--用两个栈实现队列
- 剑指offer 两个栈实现队列
- 剑指Offer-用两个栈实现队列
- 剑指offer:用两个栈实现队列
- 《剑指offer》用两个栈实现队列
- 用两个栈实现队列(剑指offer)
- 剑指 offer:用两个栈实现队列
- 【剑指Offer】用两个栈实现队列
- 剑指offer-用两个栈实现队列
- 剑指offer-两个栈模拟队列
- 《剑指offer》-用两个栈实现队列
- 剑指offer 用两个栈实现队列
- 剑指offer 用两个栈实现队列
- Android监听ScrollView滑动到顶端和底部
- leetcode ZigZag Conversion
- 栈(三):链式栈
- 走进算法
- 部分A+B
- 剑指offer--两个栈生成队列
- android ScrollView滚动距离和判断滚动停止状态
- 文章标题
- Python2.7-异常和工具
- 实现医生工作站中处方录入功能的代码(六)
- xmu 1074: 安全网络 ver.1(MST模型)
- nc导出补丁如何查看修改类属于哪个模块
- 【MyEclipse使用教程】—配置WebLogic12c服务器
- 旋转卡壳总结