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


