题目描述
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。
解答
第一个栈用来进行入栈操作。
第二个栈进行出栈操作。
当第二个栈为空时,将第一个栈的元素全部倒序加到第二个栈里面。
# coding:utf-8 class Solution: def __init__(self): self.l1 = [] self.l2 = [] def push(self, node): # write code here self.l1.append(node) def pop(self): if self.l2 == []: while self.l1: self.l2.append(self.l1.pop()) if self.l2 == []: return "空" else: return self.l2.pop() s = Solution() s.push(1) s.push(2) s.push(3) print s.pop() print s.pop() s.push(4) print s.pop() print s.pop() print s.pop() print s.pop()
结束!