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

用两个栈实现队列

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

class Solution:
    def __init__(self):
        self.stack1 = []
        self.stack2 = []

    def push(self, node):
        # 直接将元素添加到 stack1
        self.stack1.append(node)

    def pop(self):
        if not self.stack2:  # 只有当 stack2 为空时才进行转移
            while self.stack1:  # 将 stack1 中的元素转移到 stack2
                self.stack2.append(self.stack1.pop())
        return self.stack2.pop() if self.stack2 else None  # 如果 stack2 有元素,则返回栈顶元素

剑指offer刷题笔记 文章被收录于专栏

24秋招剑指offer刷题的笔记

全部评论

相关推荐

不知道怎么取名字_:两个方向 1.简历针对性准备下 2.面试前也需要准备的 主要还是要看各个公司需求,看公司行业和岗位描述,那里面已经写了对技术的需求,一份简历,不可能和所有嵌入式岗位都匹配的
投递北京经纬恒润科技股份有限公司等公司6个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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