力扣hot100 - 104、二叉树的最大深度

题目:

思路:首先理解两个概念--深度和高度

井有多深,树有多高。一般求高度我们用后续遍历,后续遍历是从最下面开始,但是最大深度=最大高度,这里为了方便直接求最大高度。

递归三部曲:参数(root) 结束条件(root==null) 单层递归逻辑(先求左子树的高度,再求右子树高度,然后比较大小拿大的+1就是该root节点的最大高度)。

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;
        }
        return Math.max(maxDepth(root.left),maxDepth(root.right))+1;
    }
}
相关推荐
疯狂打码的少年6 分钟前
【数据结构】交换类排序:冒泡与快速排序
数据结构·笔记·算法·排序算法
嵌入式阿蔡31 分钟前
面试高频考点 01:volatile / 中断 / 堆栈 八股精讲
java·面试·职场和发展·嵌入式实时数据库
Nil20833 分钟前
leetcode 108有序数组转换为二叉搜索树
数据结构·算法·leetcode
高频因子挖掘机34 分钟前
QuantDash 成交量单位统一实战:从“手”到“股”的跨市场量化数据清洗全流程
后端·算法·github
Escalating_xu1 小时前
【C++ STL简介】从六大组件到容器、迭代器与算法协作
java·c++·算法
纪念 2292 小时前
算法二叉树(一)
算法
liulilittle2 小时前
llmx 学习手册 06 —— CPU 指令集优化(AVX-512 三层演进)
c++·学习·算法·ai·llm
土司大王3 小时前
LeetCode hot100——相交链表
算法·leetcode·链表
土司大王3 小时前
LeetCode hot100——回文链表
算法·leetcode·链表
sel_93 小时前
【Docker】Docker 安装与使用详解:从零搭建到日常实战
人工智能·深度学习·算法·docker