千家信息网

怎样找出python二叉树的最大深度

发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,怎样找出python二叉树的最大深度,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。【题目】给定一个二叉树,找出其最大深度。二叉树的深度为
千家信息网最后更新 2025年01月31日怎样找出python二叉树的最大深度

怎样找出python二叉树的最大深度,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。


【题目】

给定一个二叉树,找出其最大深度。

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

说明: 叶子节点是指没有子节点的节点。

示例:
给定二叉树 [3,9,20,null,null,15,7],
3
/ \
9 20
/ \
15 7
返回它的最大深度 3 。


【思路】

使用二叉树的常用解法:递归得到左子树最大高度、右子树最大高度(如果某个子树为空,那么高度为0),那么本层的高度就为两者高度最大值+1。


【代码】

python版本

# Definition for a binary tree node.
# class TreeNode:
# def __init__(self, val=0, left=None, right=None):
# self.val = val
# self.left = left
# self.right = right
class Solution:
def maxDepth(self, root: TreeNode) -> int:
# 节点为None,返回高度为0
if not root:
return 0

left_depth, right_depth = 0, 0
# 得到左子树高度
if root.left:
left_depth = self.maxDepth(root.left)
# 得到右子树高度
if root.right:
right_depth = self.maxDepth(root.right)
return max(left_depth, right_depth) + 1

看完上述内容,你们掌握怎样找出python二叉树的最大深度的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

0