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

文章目录

题目介绍

解法

如果知道了左子树和右子树的最大深度 l 和 r,那么该二叉树的最大深度即为max(l,r)+1,而左子树和右子树的最大深度又可以以同样的方式进行计算。因此我们可以用递归的方法来计算二叉树的最大深度。具体而言,在计算当前二叉树的最大深度时,可以先递归计算出其左子树和右子树的最大深度,然后在 O(1) 时间内计算出当前二叉树的最大深度。递归在访问到空节点时退出。

java 复制代码
class Solution {
    public int maxDepth(TreeNode root) {
        if(root == null){
            return 0;
        }
        int leftdpeth = maxDepth(root.left);
        int rightdpeth = maxDepth(root.right);
        return Math.max(leftdpeth,rightdpeth) + 1;

    }
}
相关推荐
计算机安禾9 分钟前
【数据结构与算法】第22篇:线索二叉树(Threaded Binary Tree)
c语言·开发语言·数据结构·学习·算法·链表·visual studio code
算法鑫探23 分钟前
解密2025数字密码:数位统计之谜
c语言·数据结构·算法·新人首发
:mnong28 分钟前
Superpowers 项目设计分析
java·c语言·c++·python·c#·php·skills
计算机安禾32 分钟前
【数据结构与算法】第21篇:二叉树遍历的经典问题:由遍历序列重构二叉树
c语言·数据结构·学习·算法·重构·visual studio code·visual studio
信奥胡老师43 分钟前
P1255 数楼梯
开发语言·数据结构·c++·学习·算法
扶苏-su1 小时前
Java--获取 Class 类对象
java·开发语言
东离与糖宝1 小时前
LangChain4j vs Spring AI:最新对比,Java企业级Agent开发
java·人工智能
96771 小时前
C++多线程2 如何优雅地锁门 (lock_guard) 多线程里的锁的种类
java·开发语言·c++
老衲提灯找美女1 小时前
数据库事务
java·大数据·数据库
爱睡懒觉的焦糖玛奇朵2 小时前
【工业级落地算法之人员摔倒检测算法详解】
人工智能·python·深度学习·神经网络·算法·yolo·目标检测