LeetCode--102--二叉树的层次遍历(python)

给定一个二叉树,返回其按层次遍历的节点值。 (即逐层地,从左到右访问所有节点)。

例如:
给定二叉树: [3,9,20,null,null,15,7],

    3
    / \
  9 20
  / \
15 7
返回其层次遍历结果:

[
[3],
[9,20],
[15,7]
]

 1 class Solution:
 2     def levelOrder(self, root: TreeNode) -> List[List[int]]:
 3         levels= []
 4         if not root:
 5             return levels
 6         def helper(node ,level):
 7             if len(levels)==level:
 8                 levels.append([])
 9             levels[level].append(node.val)
10             if node.left:
11                 helper(node.left,level+1)
12             if node.right:
13                 helper(node.right,level+1)
14         helper(root,0)
15         return levels

来源:https://leetcode-cn.com/problems/binary-tree-level-order-traversal/solution/er-cha-shu-de-ceng-ci-bian-li-by-leetcode/

猜你喜欢

转载自www.cnblogs.com/NPC-assange/p/11495511.html