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

LeetCode150道面试经典题-- 二叉树的最大深度(简单)

1.题目

给定一个二叉树 root ,返回其最大深度。

二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。

2.示例

 

 


 3.思路

深度优先遍历

一个二叉树要查询到最大深度,可以将问题转为从根节点出发,查看左右子树的最大深度,如果左子树深度比右子树大,则返回左子树的深度。以此类推,将问题拆分到子问题到某个节点的左右子树的判断

4.代码

/*** 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;}else{int left = maxDepth(root.left);int right =  maxDepth(root.right);// 当左右子树都遍历完成后返回最大节点并加上本身节点的深度return Math.max(left,right)+1;}}
}


 

http://www.lryc.cn/news/139513.html

相关文章:

  • 【C++11】future和async等
  • Linux 系统下 GDB 调试器的使用
  • 个人首次使用UniAPP使用注意事项以及踩坑
  • VSCode 如何解决 scanf 的输入问题——Code is already running!
  • 短视频seo源码矩阵系统开源---代码php分享
  • 【docker】中文无法显示输入等问题解决方法
  • leetcode 1035. 不相交的线
  • Hystrix: 服务降级
  • 高精度运算(加减乘除乘法)
  • Mysql数据库技术知识整理
  • SpringBoot整合Mybatis 简单试用
  • SpringBoot案例-配置文件-yml配置文件
  • Web Components
  • IT运维软件的费用是多少?
  • 基于Three.js的WebXR渲染入门
  • resource doesn‘t have a corresponding Go package.
  • 【微服务】微服务调用原理及服务治理
  • 【在Windows下搭建Tomcat HTTP服务】
  • 前端Vue3框架知识点大全
  • C语言练习2(巩固提升)
  • Vulnhub: DriftingBlues: 1靶机
  • Android项目如何上传Gitee仓库
  • MySQL——基础——联合查询
  • Vue3+Vite 初始化Cesium
  • c++内存地址分配
  • 改进YOLO系列:9.添加S2Attention注意力机制
  • 微服务Feign组件远程调用自定义解码器
  • FairyGUI编辑器自定义菜单扩展插件
  • 若依二次开发
  • 安全(权限)框架Shiro概述及原理