[Leetcode 232, Easy] Implement Queue using Stacks
来源:互联网 发布:微信外卖系统源码下载 编辑:程序博客网 时间:2024/05/20 11:32
Problem:
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).
Analysis:
Solutions:
C++:
class Queue {public: // Push element x to the back of queue. void push(int x) { if(m_stack.empty()) { while(!m_stack_backup.empty()) { m_stack.push(m_stack_backup.top()); m_stack_backup.pop(); } } m_stack.push(x); } // Removes the element from in front of queue. void pop(void) { if(m_stack_backup.empty()) { while(!m_stack.empty()) { m_stack_backup.push(m_stack.top()); m_stack.pop(); } } m_stack_backup.pop(); } // Get the front element. int peek(void) { if(m_stack_backup.empty()) { while(!m_stack.empty()) { m_stack_backup.push(m_stack.top()); m_stack.pop(); } } return m_stack_backup.top(); } // Return whether the queue is empty. bool empty(void) { return (m_stack.empty() && m_stack_backup.empty()); } private: stack<int> m_stack; stack<int> m_stack_backup;};Java:
Python:
0 0
- [Leetcode 232, Easy] Implement Queue using Stacks
- leetcode 232 Implement Queue using Stacks(难易度:Easy)
- leetcode 232:Implement Queue using Stacks
- LeetCode 232: Implement Queue using Stacks
- Implement Queue using Stacks(leetcode 232)
- 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 NO.232 Implement Queue using Stacks
- LeetCode(232) Implement Queue using Stacks
- LeetCode 232 Implement Queue using Stacks
- Exponential Decay demo(Exponential Distribution)
- Android调用JNI方法 及 代码
- 访问tomcat7 java.lang.ClassCastException: org.apache.jasper.el.ELContextImpl
- IOS版本被拒的经历
- VS 2013使用SOUI时(vcpkgsrv.exe)进程导致物理内存升高解决的办法
- [Leetcode 232, Easy] Implement Queue using Stacks
- STL迭代器失效问题
- IE 不支持 jQuery的trim方法
- 黑马程序员——Java 集合(上)(第八篇)
- 杭电 hdu 1213 How Many Tables(经典并查集 基础题)
- maven下的pom.xml中定义的profile
- HDFS初识(TBC)
- POJ 1050:To the Max
- POJ 3253 Fence Repair(优先队列)