力扣 二叉树 104. 二叉树的最大深度

104. 二叉树的最大深度

一、题目描述

二、理解

对照二叉树的递归定义:

  • 如果树为空,则它是一个空树。
  • 如果树不为空,它由一个根节点和两个子树组成,分别是左子树和右子树,且左子树和右子树本身也是二叉树。
    采用递归形式解决问题:
  • 首先判断 root 是否 null,若为 null,则该树的的深度为0。
  • 若 root 不为 null,则该树的最大深度为,max (左子树的最大深度, 右子树最大深度) + 1。

三、代码

java 复制代码
/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode() {}
 *     TreeNode(int val) { this.val = val; }
 *     TreeNode(int val, TreeNode left, TreeNode right) {
 *         this.val = val;
 *         this.left = left;
 *         this.right = right;
 *     }
 * }
 */
class Solution {
    public int maxDepth(TreeNode root) {
        if (root == null) {
            return 0;
        }
        int leftDepth = maxDepth(root.left);
        int rightDepth = maxDepth(root.right);
        return Math.max(leftDepth, rightDepth) + 1;
    }
}
相关推荐
用户老李10 分钟前
卡尔曼滤波自学教程 10:无迹卡尔曼滤波(UKF)
算法
救救孩子把18 分钟前
AI面试八股文-23_23-Agent可观测性与生产监控面试题
人工智能·面试·职场和发展·agent·langsmith·langfuase
深圳市益普科技有限公司1 小时前
半导体良率管理YMS:良率与设备参数的相关性,先拉哪几组数据
人工智能·python·算法
程序员清风2 小时前
算法题中的边界条件、测试与调试
开发语言·算法·kotlin
炘爚3 小时前
数据结构算法总结
数据结构·python·算法
Dageno_AI3 小时前
ChatGPT 不再引用 Reddit 之后,还值得在 Reddit 上做 AI 可见度吗?
算法
hetao17338373 小时前
2026-10-25 hetao1733837 的刷题记录
c++·算法
Jsundoku4 小时前
第七章 机器学习 -- 其他经典算法
人工智能·算法·机器学习
进击的丸子4 小时前
基于 ArcFace SDK 的跨平台人脸特征值下发、同步以及存储方案
后端·算法·代码规范
见叶之秋4 小时前
【C++】红与黑的边界:红黑树从插入到自检
数据结构·c++·算法·面试