Leetcode104.求二叉树的最大深度

题目描述

递归法

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


相关推荐

  1. LeetCode104 深度

    2024-07-11 23:40:04       36 阅读
  2. [leetcode] 104. 深度

    2024-07-11 23:40:04       42 阅读
  3. LeetCode104.深度

    2024-07-11 23:40:04       35 阅读
  4. Leetcode 104. 深度

    2024-07-11 23:40:04       30 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-11 23:40:04       66 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-11 23:40:04       70 阅读
  3. 在Django里面运行非项目文件

    2024-07-11 23:40:04       57 阅读
  4. Python语言-面向对象

    2024-07-11 23:40:04       68 阅读

热门阅读

  1. AIGC各个应用场景下的模型选择

    2024-07-11 23:40:04       23 阅读
  2. 在Linux中使用Typora将Markdown文档导出为docx格式

    2024-07-11 23:40:04       18 阅读
  3. 编程语言与数据结构的关系:深度解析与探索

    2024-07-11 23:40:04       21 阅读
  4. 华为OD机考题(HJ108 求最小公倍数)

    2024-07-11 23:40:04       17 阅读
  5. 探究kubernetes 探针参数periodSeconds和timeoutSeconds

    2024-07-11 23:40:04       23 阅读
  6. 《大语言模型》赵鑫

    2024-07-11 23:40:04       20 阅读
  7. C++ 例外处理 try throw catch

    2024-07-11 23:40:04       24 阅读
  8. ts和js的关系

    2024-07-11 23:40:04       25 阅读
  9. 单商户和多商户的区别

    2024-07-11 23:40:04       22 阅读
  10. 对比多种方法执行命令行命令

    2024-07-11 23:40:04       21 阅读
  11. 白骑士的C++教学基础篇 1.5 数据结构

    2024-07-11 23:40:04       21 阅读
  12. 百日筑基第十七天-消息队列入门

    2024-07-11 23:40:04       21 阅读