【LeetCode 232: Implement Queue using Stacks】
来源:互联网 发布:pokemon虚拟定位软件 编辑:程序博客网 时间:2024/05/20 01:11
Description:
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.
Notes:
You must use only standard operations of a stack – which means only push to top, peek/pop from top, size, and is 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).
// 代码实现class Queue {public: // Push element x to the back of queue. void push(int x) { s1.push(x); } // Removes the element from in front of queue. void pop(void) { if(!s2.empty()){ s2.pop(); } else{ while(!s1.empty()){ s2.push(s1.top()); s1.pop(); } s2.pop(); } } // Get the front element. int peek(void) { int nRet = 0; if(!s2.empty()){ nRet = s2.top(); } else{ while(!s1.empty()){ s2.push(s1.top()); s1.pop(); } nRet = s2.top(); } return nRet; } // Return whether the queue is empty. bool empty(void) { bool bRet = false; bRet = s1.empty() ; bRet = bRet && s2.empty(); return bRet; }private: stack<int> s1, s2; // ;两个栈};
小结与思考:
注意各种数据结构的特性;思考使用两个队列实现一个栈;
- leetcode 232:Implement Queue using Stacks
- LeetCode 232: Implement Queue using Stacks
- Implement Queue using Stacks(leetcode 232)
- [Leetcode 232, Easy] 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 NO.232 Implement Queue using Stacks
- LeetCode(232) Implement Queue using Stacks
- LeetCode 232 Implement Queue using Stacks
- LeetCode 232:Implement Queue using Stacks
- java线程安全的集合类
- 【Java大数】hdu 5429 Geometric Progression
- jsp的application使用案例
- ajax 笔记
- 杭电acm--2026
- 【LeetCode 232: Implement Queue using Stacks】
- Android开发-Activity(二)
- 概率论与数理统计笔记(一): 样本空间 随机事件
- 在android 4.2.2上调试MU609步骤,WCDMA
- Geoprocessor 裁切
- ARM9 ADS8344 SPI驱动移植 (二)
- JAVA垃圾回收机制
- 美版Linksys WRT1900AC v1刷OpenWrt经验
- MyBatis+springMVC+easyUI (dataGirl)实现分页(转载)