232. 用栈实现队列(两个栈实现一个队列)

网友投稿 617 2022-10-26

232. 用栈实现队列(两个栈实现一个队列)

232. 用栈实现队列(两个栈实现一个队列)

class MyQueue { Stack inStack; //饱汉模式 Stack outStack; /** Initialize your data structure here. */ public MyQueue() { inStack = new Stack(); outStack = new Stack(); } private void checkOutStackIsEmpty(){ //检查第二个栈是否为空,为空就执行下面的操作 if (outStack.isEmpty()){ while(!inStack.isEmpty()){ outStack.push(inStack.pop()); } } } /** 入队 */ public void push(int x) { inStack.push(x); } /** 出队 */ public int pop() { checkOutStackIsEmpty(); return outStack.pop(); } /** 查看队头元素 */ public int peek() { checkOutStackIsEmpty(); return outStack.peek(); } /** 判断队列是否为空 */ public boolean empty() { if (inStack.isEmpty() && outStack.isEmpty()) return true; return false; } }/** * Your MyQueue object will be instantiated and called as such: * MyQueue obj = new MyQueue(); * obj.push(x); * int param_2 = obj.pop(); * int param_3 = obj.peek(); * boolean param_4 = obj.empty(); */

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:589. N叉树的前序遍历及后序遍历(递归实现)
下一篇:mescroll- 下拉刷新和上拉加载 js 框架
相关文章

 发表评论

暂时没有评论,来抢沙发吧~