225. Implement Stack using Queues
来源:互联网 发布:淘宝联盟如何做推广 编辑:程序博客网 时间:2024/06/02 03:17
Title
Implement the following operations of a stack using queues.
- push(x) – Push element x onto stack.
- pop() – Removes the element on top of the stack.
- top() – Get the top element.
- empty() – Return whether the stack is empty.
Notes:
- You must use only standard operations of a queue – which means only push to back, peek/pop from front, size, and is empty operations are valid.
- Depending on your language, queue may not be supported natively. You may simulate a queue by using a list or deque (double-ended queue), as long as you use only standard operations of a queue.
- You may assume that all operations are valid (for example, no pop or top operations will be called on an empty stack).
solution
class Stack {public: // Push element x onto stack. void push(int x) { s1.push(x); } // Removes the element on top of the stack. void pop() { while(s1.size() > 1) { s2.push(s1.front()); s1.pop(); } if(s1.size() == 1) { s1.pop(); } while(!s2.empty()) { s1.push(s2.front()); s2.pop(); } } // Get the top element. int top() { while(s1.size() > 1) { s2.push(s1.front()); s1.pop(); } if(s1.size() == 1) { t = s1.front(); s2.push(s1.front()); s1.pop(); } while(!s2.empty()) { s1.push(s2.front()); s2.pop(); } return t; } // Return whether the stack is empty. bool empty() { return s1.empty(); }private: queue <int> s1, s2; int t;};
run time: 0ms
两个队列
0 0
- 225.Implement Stack using Queues
- 225. Implement Stack using Queues
- 225. Implement Stack using Queues
- 225. Implement Stack using Queues
- 225. Implement Stack using Queues
- 225. Implement Stack using Queues
- 225. Implement Stack using Queues
- 225. Implement Stack using Queues
- 225. Implement Stack using Queues
- 225. Implement Stack using Queues
- 225. Implement Stack using Queues
- 225. Implement Stack using Queues
- 225. Implement Stack using Queues
- 225. Implement Stack using Queues
- 225. Implement Stack using Queues
- 225. Implement Stack using Queues
- 225. Implement Stack using Queues
- 225. Implement Stack using Queues
- JVM:类的生命周期
- SVN 怎么 checkout (校验)文件下载 SVN 上文件到本地
- Qt进程间调用.exe可执行文件
- 下载ftp文件
- poj1742 布尔值型 多重背包
- 225. Implement Stack using Queues
- ios 事件穿透的原因和解决方法
- 5-42 整型关键字的散列映射
- Android 休眠和唤醒(不会深度休眠状态)
- R 速学之篇一
- linux curl 发送get、post请求
- 字典树求子串hdu2846
- android中scroll中的listview高度重新计算
- Red and Black(DFS)