Leetcode104.求二叉树的最大深度

news/2024/11/4 14:51:32 标签: leetcode

题目描述

递归法

class Solution {
        public int maxDepth(TreeNode root) {
            if (root == null) { //帮助下面的else语句判空
                return 0;
            } else {
                int leftHeight = maxDepth(root.left);
                int rightHeight = maxDepth(root.right);
                /**
                 * 要注意的点
                 * 1. 这个return是写在else语句里面的,如果放外面,就访问不到leftHeight了。
                 * 2. Math.max(leftHeight, rightHeight) 是这行代码的关键
                 */
                return Math.max(leftHeight, rightHeight) + 1;
            }
        }
}

用f代表maxDepth()函数,执行过程解析

f(3)
⇒ max(f(9),f(20))+1
⇒ max( 
			 (max(f(null),f(null)+1),   (max(f(15),f(7))+1) 
			) +1
⇒ max( 
				(max(0,0)+1), 
			(max(f(15),f(7))+1) 
			)  + 1
⇒ max(
				1, 
				(max(       (max(f(null), f(null)+1), (max(f(null), f(null))+1)      ) +1)
			) +1
⇒ max(
				1,
				(max( (max(0,0)+1),  (max(0,0)+1))+1)
			) +1
⇒ max(
				1,
				(max(1,1)+1)
			)+1
⇒ max(1,2)+1
⇒ 3



http://www.niftyadmin.cn/n/5550990.html

相关文章

4.感知机

感知机 ​ 给定输入 x x x&#xff0c;权重 w w w&#xff0c;和偏移 b b b,感知机输出&#xff1a; KaTeX parse error: Unknown column alignment: o at position 16: \begin{array} o̲ \sigma(<w,x>… 或者是二分类&#xff1a;-1或1 Expected node of symbol gro…

GD32F303RET6读取SGM58031电压值

1、SGM58031芯片详解 &#xff08;1&#xff09;SGM58031是一款低功耗&#xff0c;16位精度&#xff0c;delta-sigma (ΔΣ)模数转换器(ADC)。它从3V到5.5V供电。 &#xff08;2&#xff09;SGM58031包含一个片上参考和振荡器。它有一个I2C兼容接口&#xff0c;可以选择四个I2…

每日刷题(二分图,二分查找,dfs搜索)

目录 1.P3853 [TJOI2007] 路标设置 2.P1129 [ZJOI2007] 矩阵游戏 3.P1330 封锁阳光大学 4.Trees 5.P1141 01迷宫 1.P3853 [TJOI2007] 路标设置 P3853 [TJOI2007] 路标设置 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 先求出每个路标之间的距离&#xff0c;再二分查找每…

【案例】python集成OCR识别工具调研

目录 一、前言二、Tesseract_OCR2.1、安装过程2.2、python代码使用三、PaddleOCR3.1、安装过程3.2、python代码使用四、EasyOCR五、ddddOCR六、CnOCR七、总结一、前言 因项目需要OCR识别能力,且要支持私有化部署。本文将对比市场一些开源的OCR识别工具,从中选择适合项目需要…

STM32崩溃问题排查

文章目录 前言1. 问题说明2. STM32&#xff08;Cortex M4内核&#xff09;的寄存器3. 崩溃问题分析3.1 崩溃信息的来源是哪里&#xff1f;3.2 崩溃信息中的每个关键字代表的含义3.3 利用崩溃信息去查找造成崩溃的点3.4 keil5中怎么根据地址找到问题点3.5 keil5上编译时怎么输出…

android13 rom frameworks 蓝牙自动接收文件

总纲 android13 rom 开发总纲说明 目录 1.前言 2.源码查找 3.我们先实现第一种改法 4.实现第二种改法 5.第三种改法代码参考 6.编译测试 1.前言 我们从导航栏这里,点开这个蓝牙的接收框,弹出来的对话框,使用android studio 的layout inspector可以发现这个是 Bluetoo…

LVS集群(二)

DR模式 LVS三种模式 nat地址转换 DR直接路由模式 tun隧道模式 DR模式的特点&#xff1a; 调度器在整个lvs集群中是最重要的&#xff0c;在nat模式中&#xff0c;负责接收请求&#xff0c;同时根据负载均衡算法转发流量&#xff0c;响应发送给客户端 DR模式&#xff1a;调度…

vue3-vite-pinia模板

模板说明 下载 git clone https://github.com/AIxiaoHanBao/vue-template.gitmodule参数 node版本 16 UI组件库 element-plus 持久化 pinia 网络请求 axios 路由 vue-router 使用说明 权限管理目录access资源目录assets组件目录components页面目录pages网络请求目录re…