題目描述
用兩個棧來實作一個隊列,完成隊列的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()
結束!