Python :用两个栈实现队列

转自:http://blog.csdn.net/Lynette_bb/article/details/75092745

牛客网上的剑指 offer的在线编程:

题目描述

用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。
  1. # -*- coding:utf-8 -*-
  2. class Solution:
  3. def __init__(self):
  4. self.stack1 = []
  5. self.stack2 = []
  6. def push(self, node):
  7. # write code here
  8. self.stack1.append(node)
  9. def pop(self):
  10. # return xx
  11. if self.stack2:
  12. return self.stack2.pop()
  13. elif not self.stack1:
  14. return None
  15. else:
  16. while self.stack1:
  17. self.stack2.append(self.stack1.pop())
  18. return self.stack2.pop()
上一篇:iOS 10的正确解锁方式


下一篇:Python列表操作常用API