剑指offer—用两个栈实现队列
2015-09-30 19:40
369 查看
华电北风吹
天津大学认知计算与应用重点实验室
日期:2015/9/30
题目描述
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。
解析:我的思路是用一个栈来储存数据,入队的话直接在这个栈上入栈,出队的话借助辅助栈,对辅助栈入栈,然后取出头元素,然后把辅助栈上的元素在入到数据栈里面。
天津大学认知计算与应用重点实验室
日期: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; };
相关文章推荐
- 剑指offer—重建二叉树
- 剑指offer—从头到尾打印链表
- 2015 ACM/ICPC Asia Regional Hefei Online
- 剑指offer—替换空格
- web前端性能优化-图片优化实战分享
- 剑指offer—二维数组的查找
- css3应用
- Codeforces 549D Haar Features (模拟)
- 每天一个css border和inline
- jQuery源码学习 之 each迭代器
- 函数多层执行
- js学习注意知识
- W3school学习笔记之HTML5
- js函数对象的总结
- JS生成随机的由字母数字组合的字符串
- HTML调用CSS的四种方法
- Js自定义属性
- unittest测试驱动之HTMLTestRunner.py
- 简单实用的jquery分页插件
- 原型关系