剑指 Offer 55 – I. 二叉树的深度

题目描述

https://leetcode-cn.com/problems/er-cha-shu-de-shen-du-lcof
输入一棵二叉树的根节点,求该树的深度。从根节点到叶节点依次经过的节点(含根、叶节点)形成树的一条路径,最长路径的长度为树的深度。

例如:

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

    3
   / \
  9  20
    /  \
   15   7

返回它的最大深度 3 。

提示:

节点总数 <= 10000
注意:本题与主站 104 题相同:https://leetcode-cn.com/problems/maximum-depth-of-binary-tree/

解题思路

很经典的后序遍历递归求二叉树高度问题,背也要背过

解题代码

class Solution:
    def maxDepth(self, root: TreeNode) -> int:
        if root is None:
            return 0  # 遍历不动了,能做的贡献为0
        ld = self.maxDepth(root.left)
        rd = self.maxDepth(root.right)
        return max(ld, rd) + 1

执行结果

执行结果:通过
执行用时:44 ms, 在所有 Python3 提交中击败了90.72%的用户
内存消耗:16.4 MB, 在所有 Python3 提交中击败了70.51%的用户

版权声明:
作者:iLemonRain
链接:http://314401480.xyz/?p=229
来源:柠檬酱的blog
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>