剑指 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%的用户
共有 0 条评论