LeetCode 面试题09. 用两个栈实现队列【剑指Offer】【Easy】【Python】【栈】【队列】 问题 "力扣" 用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没 ...
分类:
编程语言 时间:
2020-03-27 21:35:37
阅读次数:
75
/** * 题目: * 编写一个类,用两个栈实现队列,支持队列的基本操作(add、poll、peek) * 分析: * 栈的特点是先进后出,而队列的特点是先进先出,我们可以用两个栈正好能把顺序 * 反过来实现类似队列的操作。 * 具体实现是一个栈作为压入栈,在压入数据时只往这个栈中压入,记为stac ...
分类:
其他好文 时间:
2020-03-04 12:29:06
阅读次数:
54
用栈模拟队列。题干即是题意,用栈实现队列的几个函数,例子, Example: MyQueue queue = new MyQueue(); queue.push(1); queue.push(2); queue.peek(); // returns 1 queue.pop(); // returns ...
分类:
其他好文 时间:
2020-03-04 09:53:27
阅读次数:
58
栈和队列1.用两个栈实现队列2.包含min函数的栈3.栈的压入弹出序列正文栈和队列1. 用两个栈实现队列题目表述用两个栈实现一个队列。队列的声明如下:请实现它的两个函数appendTail和deleteHead,分别完成在队列尾部插入结点和在队列头部删除结点的功能。解题思路一个栈用来存储插入队列数据... ...
分类:
其他好文 时间:
2020-02-28 11:59:59
阅读次数:
66
题目 用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead?操作返回 1 ) 思路 一个入栈,一个出栈 收获 java的Stack pop方法会返回出 ...
分类:
其他好文 时间:
2020-02-22 16:03:26
阅读次数:
63
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 思路 push时直接入栈stack1,pop时若stack2为空则stack1出栈到stack2后stack2.pop(),否则stack2直接pop。 时间复杂度O(1)。 代码 ...
分类:
其他好文 时间:
2020-02-14 10:52:33
阅读次数:
73
class CQueue { private Stack<Integer> stack1; private Stack<Integer> stack2; public CQueue() { this.stack1 = new Stack<>(); this.stack2 = new Stack<>( ...
分类:
其他好文 时间:
2020-02-13 21:17:39
阅读次数:
83
题目链接 https://leetcode-cn.com/problems/implement-queue-using-stacks/ 题目描述 使用栈实现队列的下列操作: push(x) -- 将一个元素放入队列的尾部。pop() -- 从队列首部移除元素。peek() -- 返回队列首部的元素。 ...
分类:
编程语言 时间:
2020-02-01 11:00:22
阅读次数:
91
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 思路:元素先进stack1,再从stack1到stack2,如果stack2中有元素则直接弹出,没有则从stack1中获取元素。当stack2中有元素的时候,stack1不能向stack2添加元素,否则会造成乱序。 ...
分类:
其他好文 时间:
2020-01-22 23:37:21
阅读次数:
77