用两个栈来实现一个队列,完成队列的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
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 思路:元素先进stack1,再从stack1到stack2,如果stack2中有元素则直接弹出,没有则从stack1中获取元素。当stack2中有元素的时候,stack1不能向stack2添加元素,否则会造成乱序。 ...
分类:
其他好文 时间:
2020-01-22 23:37:21
阅读次数:
77
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 ...
分类:
其他好文 时间:
2020-01-09 13:21:23
阅读次数:
63
题一:【用两个栈实现队列】 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 分析:栈-先进后出 队列-先进先出 知识点:Stack API 法一:暴力-一个栈存储push的数据,一个栈pop数据。每次push前将stack2中数据添加到stack1中,每次pop ...
分类:
其他好文 时间:
2019-12-10 15:23:19
阅读次数:
87
题目描述 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 # -*- coding:utf-8 -*- class Solution: def __init__(self): self.stack1 = [] self.stack2 = [] def push( ...
分类:
编程语言 时间:
2019-12-06 11:32:52
阅读次数:
99
"题目" 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 题解 描述 栈的特性是先进后出,队列的特点是先进先出,当数字依次入栈1后,依次出栈1并且压入栈2后,然后再出栈的顺序与进入栈1的顺序是一致的。 因此,进入队列通过压入栈1实现,弹出队列通过弹出栈2的栈顶元 ...
分类:
编程语言 时间:
2019-11-12 20:20:43
阅读次数:
107
题目: 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 分析: 栈的特点是先进后出,队列的特点则是先进先出。 题目要求我们用两个栈来实现一个队列,栈和队列都有入栈(入队)的操作,所以我们可以使用一个栈来模拟入队的操作,另一个栈用来负责出队。 利用stack1模拟 ...
分类:
编程语言 时间:
2019-11-09 19:44:32
阅读次数:
96
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 https://www.nowcoder.com/questionTerminal/54275ddae22f475981afa2244dd448c6 做法: 1)总是在stack1中push元素‘ 2)当stack ...
分类:
其他好文 时间:
2019-11-09 00:32:08
阅读次数:
81