目录

0104:二叉树的最大深度

力扣第 104 题

题目

给定一个二叉树 root ,返回其最大深度。

二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。

示例 1:

输入:root = [3,9,20,null,null,15,7]
输出:3

示例 2:

输入:root = [1,null,2]
输出:2

提示:

  • 树中节点的数量在 [0, 104] 区间内。
  • -100 <= Node.val <= 100

相似问题:

分析

可以用递归,也可以用层序遍历。

解答

1
2
3
4
5
6
7
class Solution:
    def maxDepth(self, root: Optional[TreeNode]) -> int:
        res,Q = 0,[root] if root else []
        while Q:
            res += 1
            Q = [c for u in Q for c in [u.left,u.right] if c]
        return res

41 ms