题解 | #用两个栈实现队列#

用两个栈实现队列

http://www.nowcoder.com/practice/54275ddae22f475981afa2244dd448c6

python里面有pop()函数,将stack1倒序写入stack2,那么就直接用pop()即可,然后再对stack2用pop()输出。
具体的思路跟最高赞的思路是完全一致的。

# -*- coding:utf-8 -*-
class Solution:
    def __init__(self):
        self.stack1 = []
        self.stack2 = []
    def push(self, node):
        # write code here
        self.stack1.append(node)
    def pop(self):
        # return xx
        if self.stack2:
            return self.stack2.pop()
        else:
            for i in range(len(self.stack1)):
                self.stack2.append(self.stack1.pop())
            return self.stack2.pop()
全部评论

相关推荐

点赞 评论 收藏
转发
9 收藏 评论
分享
牛客网
牛客企业服务