栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

剑指 Offer(easy) 55 - I. 二叉树的深度(Java)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

剑指 Offer(easy) 55 - I. 二叉树的深度(Java)

 原题链接: 剑指 Offer 55 - I. 二叉树的深度

题目描述

输入一棵二叉树的根节点,求该树的深度。从根节点到叶节点依次经过的节点(含根、叶节点)形成树的一条路径,最长路径的长度为树的深度。

示例
    3
   / 
  9  20
    /  
   15   7
解题思路

递归:从树根开始,记录count1=count2=1,即第一层根节点的层数,然后分别遍历它的左子树与右子树。以根节点的左儿子为新的根节点遍历,每到一层count1(如果是右子树为count2)+1,直到遍历结束,返回count1与count2中较大的数即为最大深度。

注:图片来源于leetcode官方题解
 代码
class Solution {
    public int maxDepth(TreeNode root) {
        if(root==null){
            return 0;
        }
        int count1=1,count2=1;
        if(root.left!=null){
            count1+=maxDepth(root.left);
        }
        if(root.right!=null){
            count2+=maxDepth(root.right);
        }
        return Math.max(count1,count2);
    }
}
补充

好几天没有更了呀,但是没有偷懒來,最近在学一些新的算法跟数据结构,所以会比较困难。

还有一件激动的事,就是路飞大佬举办的第一届LeetCode刷题打卡活动今天就要开始了,前几名会有丰厚的现金奖励哦,欢迎大家来内卷(地址放在下面了)。

路飞大佬第一届LeetCode刷题打卡活动

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/328881.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号