題目:
二叉樹的層序遍歷:給你一個二叉樹,請你返回其按 層序遍歷 得到的節點值。 (即逐層地,從左到右訪問所有節點)。
思路:
層序遍歷的常用解題思路。
程序:
# 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 [] result = [] current_level = [root] while current_level: auxiliary = [] next_level = [] for node in current_level: auxiliary.append(node.val) if node.left: next_level.append(node.left) if node.right: next_level.append(node.right) result.append(auxiliary) current_level = next_level return result