104. 二叉树的最大深度

题目描述:

链接: https://leetcode-cn.com/problems/maximum-depth-of-binary-tree/submissions/
给定一个二叉树,找出其最大深度。

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

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


代码:

和求最小深度一样, 利用递归思想

class Solution {
    // T: O(n), S: O(n)
    public int maxDepth(TreeNode root) {
        if (root == null) return 0;
        // 返回当前节点的深度1
        if ((root.left == null) && (root.right == null)) return 1;
        int max_depth = Integer.MIN_VALUE;
        // 获取左右子树中的较大深度
        if (root.left != null) {
            max_depth = Math.max(max_depth, maxDepth(root.left));
        }
        if (root.right != null) {
            max_depth = Math.max(max_depth, maxDepth(root.right));
        }
        return max_depth + 1;
    }
}
全部评论

相关推荐

06-27 15:15
长安大学 Java
点赞 评论 收藏
分享
牛客刘北:如果暑期实习是27届的话,你要晚一年才会毕业,企业为什么会等你呢?要搞清时间逻辑呀!27届现在实习只能是在暑假实习,这是日常实习,不是暑期实习。所以多去投日常实习吧,暑期实习肯定不会要你的
点赞 评论 收藏
分享
是每个人事都这样与找工作的人这样沟通吗?正常询问不可以吗
据说名字越长别人越关注你的昵称我觉得我要被关注了:excal 我还真不会
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务