[LeetCode]232. Implement Queue using Stackssil
来源:互联网 发布:java中sdk 编辑:程序博客网 时间:2024/06/07 02:51
Implement the following operations of a queue using stacks.
- push(x) -- Push element x to the back of queue.
- pop() -- Removes the element from in front of queue.
- peek() -- Get the front element.
- empty() -- Return whether the queue is empty.
- You must use only standard operations of a stack -- which means only
push to top
,peek/pop from top
,size
, andis empty
operations are valid. - Depending on your language, stack may not be supported natively. You may simulate a stack by using a list or deque (double-ended queue), as long as you use only standard operations of a stack.
- You may assume that all operations are valid (for example, no pop or peek operations will be called on an empty queue).
思路:用两个栈,pop时先将栈底元素之上的元素存进另外一个栈中,弹出栈底元素后将其他元素再放回原来的栈中
当栈为空时,添加第一个元素时将该值保存为peek,用在peek()方法中
class MyQueue { Stack<Integer> stack1 = new Stack<Integer>(); Stack<Integer> stack2 = new Stack<Integer>(); int peek; // Push element x to the back of queue. public void push(int x) { if (stack1.empty() == true) { peek = x; } stack1.push(x); } // Removes the element from in front of queue. public void pop() { while( !stack1.empty()) { stack2.push(stack1.pop()); } stack2.pop(); if (stack2.empty() == true) peek = 0; else peek = stack2.peek(); while( !stack2.empty()) { stack1.push(stack2.pop()); } } // Get the front element. public int peek() { return peek; } // Return whether the queue is empty. public boolean empty() { return stack1.empty(); }}
0 0
- [LeetCode]232. Implement Queue using Stackssil
- [LeetCode]232.Implement Queue using Stacks
- 【leetcode】232. Implement Queue using Stacks
- <LeetCode OJ> 232. Implement Queue using Stacks
- 232. Implement Queue using Stacks LeetCode
- Leetcode: 232. Implement Queue using Stacks(JAVA)
- leetcode 232. Implement Queue using Stacks
- LeetCode *** 232. Implement Queue using Stacks
- 【leetcode】232. Implement Queue using Stacks
- LeetCode 232. Implement Queue using Stacks
- Leetcode题解 232. Implement Queue using Stacks
- #leetcode#232. Implement Queue using Stacks
- leetcode 232. Implement Queue using Stacks
- Leetcode 232. Implement Queue using Stacks
- leetcode 232. Implement Queue using Stacks
- LeetCode-232.Implement Queue using Stacks
- 【leetcode】232. Implement Queue using Stacks
- [leetcode] 232. Implement Queue using Stacks
- poj 1502MPI Maelstrom
- 【前端笔记--转载】JS中是否一切皆对象
- Mybatis 外部修改数据库形成的缓存问题
- 【翻译自mos文章】设置了RemoveIPC=yes 的RHEL7.2 会crash掉Oracle asm 实例和Oracle database实例
- c++中 vs 简单的对txt文件读写
- [LeetCode]232. Implement Queue using Stackssil
- 也说TypeScript
- 写两个线程,一个线程打印 1~52,另一个线程打印字母A-Z。打印顺序为12A34B56C……5152Z
- hdu 1300 pearls
- Html5 手机wap开发、微信开发、APP开发的优缺点-创业者必知
- windows10 系统下为python配置numpy和scipy
- Fragment向activity传值的接口回调方法
- 第三周项目3-输出星号图(c)
- Codeforces 631B Print Check【模拟】