当前位置: 首页 > news >正文

L50--- 104. 二叉树的最大深度(深搜)---Java版

1.题目描述

二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。
在这里插入图片描述

2.思路

这个二叉树的结构如下:
在这里插入图片描述

根节点 1
左子节点 2
右子节点 3
左子节点 4
计算过程
从根节点 1 开始计算:
计算左子树的最大深度:
根节点 2:
左子树为空,深度为0。
右子树为空,深度为0。
所以节点 2 的深度为 Math.max(0, 0) + 1 = 1。
计算右子树的最大深度:
根节点 3:
计算左子树的最大深度:
根节点 4:
左子树为空,深度为0。
右子树为空,深度为0。
所以节点 4 的深度为 Math.max(0, 0) + 1 = 1。
右子树为空,深度为0。
所以节点 3 的深度为 Math.max(1, 0) + 1 = 2。
最后,根节点 1 的深度为 Math.max(1, 2) + 1 = 3。

3.代码实现

/*** 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;}
}

相关文章:

  • windows11 建立批处理bat文件来删除指定目录下的所有隐藏的文件。
  • mysql_ssl_rsa_setup使用详解
  • 【Mysql】 深入理解MySQL的执行计划
  • 【云原生】创建harbor私有仓库及使用aliyun个人仓库
  • 果园预售系统的设计
  • 生命在于学习——Python人工智能原理(3.3)
  • 解决浏览器缩放的时候,重新设置滚动条的位置,使页面滚动条固定悬浮在页面底部
  • 尝试用 GPT-4o 写 2024高考语文作文
  • Unity射击游戏开发教程:(27)创建带有百分比的状态栏
  • 课设--学生成绩管理系统
  • Echats-wordcloud 文字云图的踩坑点【Unknown series wordCloud】
  • C# —— 字符串拼接
  • DockerCompose+Jenkins+Pipeline流水线打包Vue项目(解压安装配置Node)入门
  • 【线性代数】向量空间,子空间,向量空间的基和维数
  • 在Linux系统中,使用OpenSSL生成CSR(Certificate Signing Request),并同时生成PEM格式的公钥和私钥的命令如下:
  • 「前端早读君006」移动开发必备:那些玩转H5的小技巧
  • Apache的基本使用
  • input实现文字超出省略号功能
  • Java知识点总结(JavaIO-打印流)
  • Making An Indicator With Pure CSS
  • OpenStack安装流程(juno版)- 添加网络服务(neutron)- controller节点
  • UEditor初始化失败(实例已存在,但视图未渲染出来,单页化)
  • 从零开始在ubuntu上搭建node开发环境
  • 离散点最小(凸)包围边界查找
  • 如何使用 JavaScript 解析 URL
  • 一个项目push到多个远程Git仓库
  • 一加3T解锁OEM、刷入TWRP、第三方ROM以及ROOT
  • ​马来语翻译中文去哪比较好?
  • # 20155222 2016-2017-2 《Java程序设计》第5周学习总结
  • # 数据结构
  • ######## golang各章节终篇索引 ########
  • #etcd#安装时出错
  • (10)工业界推荐系统-小红书推荐场景及内部实践【排序模型的特征】
  • (6)添加vue-cookie
  • (bean配置类的注解开发)学习Spring的第十三天
  • (c语言版)滑动窗口 给定一个字符串,只包含字母和数字,按要求找出字符串中的最长(连续)子串的长度
  • (Oracle)SQL优化技巧(一):分页查询
  • (vue)页面文件上传获取:action地址
  • (ZT)北大教授朱青生给学生的一封信:大学,更是一个科学的保证
  • (阿里云万网)-域名注册购买实名流程
  • (附源码)spring boot建达集团公司平台 毕业设计 141538
  • (附源码)计算机毕业设计ssm电影分享网站
  • (附源码)计算机毕业设计SSM基于java的云顶博客系统
  • (离散数学)逻辑连接词
  • (每日持续更新)jdk api之FileFilter基础、应用、实战
  • (七)理解angular中的module和injector,即依赖注入
  • (译)2019年前端性能优化清单 — 下篇
  • (转)Java socket中关闭IO流后,发生什么事?(以关闭输出流为例) .
  • (转)shell中括号的特殊用法 linux if多条件判断
  • .NET C#版本和.NET版本以及VS版本的对应关系
  • .NET 动态调用WebService + WSE + UsernameToken
  • .NET 将多个程序集合并成单一程序集的 4+3 种方法
  • .NETCORE 开发登录接口MFA谷歌多因子身份验证
  • /etc/X11/xorg.conf 文件被误改后进不了图形化界面
  • @SuppressWarnings注解