剑指Offer-5-用两个栈实现队列 发表于 2020-03-04 | 分类于 剑指Offer | 评论数: | 热度: ℃ 本文字数: 2.8k | 阅读时长 ≈ 3 分钟 题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 Code1234567891011121314151617181920212223242526272829class Solution{public: void push(int node) { stack1.push(node); } //注意:只有当第二个栈为空时,才能从第一个栈pop到第二个栈中 int pop() { //不为空 if(!stack2.empty()){ int out = stack2.top(); stack2.pop(); return out; }else{ while(!stack1.empty()){ stack2.push(stack1.top()); stack1.pop(); } int out = stack2.top(); stack2.pop(); return out; } }private: stack<int> stack1; stack<int> stack2;}; 相关文章推荐 剑指Offer-1-二维数组的查找 剑指Offer-11-二进制中1的个数 剑指Offer-12-数值的整数次方 剑指Offer-10-矩形覆盖 剑指Offer-13-调整数组顺序使奇数位于偶数前面 ----\(˙<>˙)/----赞赏一下吧~ 打赏 微信支付 支付宝 本文作者: wicherQAQ 本文链接: https://wicherqaq.github.io/2020/03/04/%E5%89%91%E6%8C%87Offer-5-%E7%94%A8%E4%B8%A4%E4%B8%AA%E6%A0%88%E5%AE%9E%E7%8E%B0%E9%98%9F%E5%88%97/ 版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!