# 透過pop的方式取出最晚進去的節點 node = nodes.pop() # 紀錄當前的層 cur_level.append(node.val) # 如果是偶數層 Left到Right,因此我們先塞Right再Left,按照後進先出的方式達到 Left -> Right if level % 2 == 1: if node.right: next_level.append(node.right) if node.left: next_level.append(node.left) # 如果是奇數層 Right到Left,因此我們先塞Left再Right,按照後進先出的方式達到 Right -> Left else: if node.left: next_level.append(node.left) if node.right: next_level.append(node.right)