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

用两个栈实现队列

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

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 not self.stack2:
            while self.stack1:
                self.stack2.append(self.stack1.pop())
        return self.stack2.pop()

用stack1入栈,stack2出栈,stack2出栈之前都要把stack1的全部元素入stack2。以此来实现队列先进先出的特点。

全部评论

相关推荐

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