用两个栈来实现一个队列,完成队列的Push和Pop操作。
class Solution:
def __init__(self):
self.acceptStack = []
self.outputStack = []
def push(self, node):
self.acceptStack.append(node)
def pop(self):
# # 如果outputStack为空则把acceptStack中的数据全部弹出放到outputStack中。
if self.outputStack == []:
while self.acceptStack:
self.outputStack.append(self.acceptStack.pop())
# 如果outputStack不为空则直接弹出
if self.outputStack != []:
return self.outputStack.pop()
else:
return None
if __name__ == '__main__':
data = Solution()
data.push(1)
data.push(2)
data.push(3)
print(data.pop())
print(data.pop())
print(data.pop())