jz032III.从上到下打印二叉树 Leetcode binaryTree queue bfs Jun 17, 2020 题目链接 额,我就是把jz032II在tmp里存好每一层的时候间隔着反转了一下数组然后加入了答案中。应该不是这样做的吧?额看了一下好像这种实现也还行,我就不来讨论别的解法了,因为看起来代码也没有更加简洁之类的。这个算法的时间复杂度是O(N),空间复杂度是O(N)。 # Definition for a binary tree node. # class TreeNode: # def __init__(self, x): # self.val = x # self.left = None # self.right = None class Solution: def levelOrder(self, root: TreeNode) -> List[List[int]]: if not root: return [] queue, res = [root], [] flag = True while queue: tmp = [] for _ in range(len(queue)): node = queue.pop(0) tmp.append(node.val) if node.left: queue.append(node.left) if node.right: queue.append(node.right) if flag: flag = False else: flag = True tmp = tmp[::-1] res.append(tmp) return res PREVIOUSjz032II.从上到下打印二叉树IINEXTjz033.二叉搜索树的后序遍历序列