题解 | #用两个栈实现队列#
用两个栈实现队列
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刷题的笔记