2.由两个栈组成的队列
来源:互联网 发布:创维数字 人工智能 编辑:程序博客网 时间:2024/04/30 09:24
题目:用两个栈实现队列,能够支持级别的操作(add poll peek)
思路:用一个栈存数据,另一个负责取数据,当取数据的栈空的时候,就把存数据的那个栈的数据全部取过来就行了,当两个栈都为空,则队列为空
import java.util.Stack;public class StackToQueue {public Stack<Integer> inStack = new Stack<Integer>();public Stack<Integer> outStack = new Stack<Integer>();public void add(int e){inStack.push(e);}public int poll(){if(inStack.isEmpty()&&outStack.isEmpty())throw new RuntimeException("stack is empty ");else if(outStack.isEmpty()){while(!inStack.isEmpty()){outStack.push(inStack.pop());}}return outStack.pop();}public int peek(){if(inStack.isEmpty()&&outStack.isEmpty())throw new RuntimeException("stack is empty ");else if(outStack.isEmpty()){while(!inStack.isEmpty()){outStack.push(inStack.pop());}}return outStack.peek();}}
0 0
- 2.由两个栈组成的队列
- 设计由两个栈组成的队列
- 由两个栈组成的队列
- 由两个栈组成的队列
- 由两个栈组成的队列
- 由两个栈组成的队列
- 由两个栈组成的队列
- 由两个栈组成的队列
- 由两个栈组成队列
- 栈和队列 由两个栈组成的队列
- 【WG面试算法】由两个栈组成的队列
- 1_2由两个栈组成的队列
- 【栈】由两个栈组成队列
- 1栈和队列--由两个栈组成队列
- 栈和队列---由两个栈组成队列
- 栈和队列(2)--由两个栈组成的队列
- 栈和队列——由两个栈组成的队列
- (一)栈和队列--由两个栈组成的队列 java实现
- pat1020Tree Traversals (25)
- Linux Shell学习笔记5:理解Linux文件权限
- HTTP 基础知识
- 我的常用脚本记录
- linux shell脚本中shift命令的使用
- 2.由两个栈组成的队列
- Fresco 源码分析(四) 后台数据返回到前台的处理 - Drawable体系的介绍(1)
- 类与对象在内存中的分布情况
- weak_ptr的用处
- linux下django+mysql配置
- hdu 5441 Travel 排序 并查集
- Http协议基础
- ubuntu 16.10 g++6.2 编译cppcms1.0.5
- Mac osx 删除云梯VPN 配置文件(remove profiles)