第五题:用两个栈实现队列

用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。

# -*- 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:    #如果stack2有元素,直接出队
            return self.stack2.pop()
        while self.stack1:  #当stack2没有元素时,将stack1的元素逆序存入到stack2中
            self.stack2.append(self.stack1.pop())
        return self.stack2.pop() 
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务