用两个栈实现队列
题目描述
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。时间限制:Python 2秒 空间限制:Python 64M
解题思路
+ 首先初始化两个列表作为栈,一个用作输入,另一个用作输出,对于队列的push操作用input去接收,对于队列的pop操作,需要先把input里面的所有值都弹出添加到output中,再弹出output的最后一个,这样就实现了队列的先进先出原理。
class Solution:
def __init__(self):
self.input = []
self.output = []
def push(self, node):
# write code here
self.input.append(node)
def pop(self):
# return xx
if not self.output:
while self.input:
self.output.append(self.input.pop())
return self.output.pop()