二叉树的最大深度(LeetCode)

题目

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

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

解题

python 复制代码
# 定义二叉树节点的类
class TreeNode:
    def __init__(self, val=0, left=None, right=None):
        self.val = val
        self.left = left
        self.right = right


# 计算二叉树最大深度的函数
def maxDepth(root: TreeNode) -> int:
    # 如果当前节点为空,则深度为0
    if not root:
        return 0

    # 递归计算左子树和右子树的深度
    left_depth = maxDepth(root.left)
    right_depth = maxDepth(root.right)

    # 返回左子树和右子树深度的较大者 + 1
    return max(left_depth, right_depth) + 1


# 创建二叉树
root = TreeNode(3)
root.left = TreeNode(9)
root.right = TreeNode(20, TreeNode(15), TreeNode(7))

# 计算最大深度
depth = maxDepth(root)
print(depth)  # 输出 3
相关推荐
小白学大数据12 小时前
Python 爬虫实战:抓取汽车之家二手车成交价格与里程数据
开发语言·爬虫·python·汽车
可编程芯片开发13 小时前
基于双PI控制器结构的六步逆变器供电无刷直流电机调速simulink仿真
算法
Sagittarius_A*13 小时前
后量子密码|通识认知 02|量子威胁核心原理:Shor 算法如何击穿传统公钥密码
算法·信息安全·密码学·量子计算
Jazz_z13 小时前
如何用Python将彩色PDF一键转为黑白(灰度)
java·python·pdf
青山木13 小时前
Hot 100 --- 在排序数组中查找元素的第一个和最后一个位置
java·数据结构·算法·leetcode
SEO_juper13 小时前
2026年Schema自动注入实战:用Python批量给1000个页面加上JSON-LD,AI引用率实测提升38%
人工智能·python·json·seo·独立站
其美杰布-富贵-李13 小时前
聚类算法详解:K-means、层次聚类与 DBSCAN
算法·机器学习·kmeans·聚类
zzzll111114 小时前
HashMap、HashTable、ConcurrentHashMap 详细区别与深度解析
开发语言·python
程序员AI工坊14 小时前
Agent 开发:ReAct 循环与工具调用实战——从单次调用到自主 Agent
人工智能·后端·python·langchain·agent·react
碧海银沙音频科技研究院14 小时前
4 BES2710编译环境搭建方法
嵌入式硬件·算法