剑指offer—用两个栈实现队列
来源:互联网 发布:u盘raw格式数据恢复 编辑:程序博客网 时间:2024/05/01 17:35
华电北风吹
天津大学认知计算与应用重点实验室
日期:2015/9/30
题目描述
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。
解析:我的思路是用一个栈来储存数据,入队的话直接在这个栈上入栈,出队的话借助辅助栈,对辅助栈入栈,然后取出头元素,然后把辅助栈上的元素在入到数据栈里面。
class Solution{public: void push(int node) { stack1.push(node); } int pop() { if (stack1.empty()) { return NULL; } while (stack1.empty()==false) { stack2.push(stack1.top()); stack1.pop(); } int result = stack2.top(); stack2.pop(); while (stack2.empty()==false) { stack1.push(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----用两个栈实现队列
- 进行一个设计比赛
- uvaoj 1073 - Glenbow Museum
- 使用cocoapods下载很慢怎么办?
- 九月总结
- 实验一.3
- 剑指offer—用两个栈实现队列
- 9月英语小结
- LeetCode Climb Stairs
- iOS模拟器键盘的下面添加一个完成按钮
- ZooKeeper
- 生活感悟
- 【软考3】知识点的宏观总结
- 传感器的使用:方向传感器
- Git使用教程2:版本库的创建和添加文件