力扣104 求二叉树的最大深度
  ts5SxE9jKU6l 2023年11月01日 65 0

力扣104 求二叉树的最大深度

题目:

给定一个二叉树,找出其最大深度。

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

说明: 叶子节点是指没有子节点的节点。

示例

给定二叉树 [3,9,20,null,null,15,7]

    3
   / \
  9  20
    /  \
   15   7

返回它的最大深度 3 。

解题思路:

要求一颗二叉树的最大深度我们递归遍历这颗二叉树的左子树与右子树分别求得左子树与右子树的高度并返回其中的最大值最后再加上1就是这颗二叉树的最大深度。

代码:

/**
 * 求一颗二叉树的最大深度,就看这棵二叉树的左子树与右子树的深度哪个最大,取这两者的最大值再加1
 * 加1就是加的根节点的这一层
 */
public class MaxDepthTree {
    //1.首先定义二叉树的节点类
    public static class TreeNode{
        public int value;
        public TreeNode left;
        public TreeNode right;

        public TreeNode(int value) {
            this.value = value;
        }
    }
    //2.定义一个方法取出以root为根节点的最大的高度
    public static int maxDepth(TreeNode root){
        //2.1如果根节点为空说明此树的高度为0
        if (root == null) {
            return 0;
        }
        //2.2递归左子树,递归右子树并返回这两颗子树的最大值再加1
        return Math.max(maxDepth(root.left),maxDepth(root.right)) + 1;
    }
}
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

上一篇: MyBatis的简介及测试 下一篇: 包装类
  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  2Vtxr3XfwhHq   2024年05月17日   55   0   0 Java
  Tnh5bgG19sRf   2024年05月20日   110   0   0 Java
  8s1LUHPryisj   2024年05月17日   46   0   0 Java
  aRSRdgycpgWt   2024年05月17日   47   0   0 Java
ts5SxE9jKU6l
作者其他文章 更多

2023-11-01

2023-11-01

2023-11-01

2023-11-01

2023-11-01

2023-11-01