美文网首页
NC13 二叉树的最大深度

NC13 二叉树的最大深度

作者: Abeants | 来源:发表于2021-10-19 16:58 被阅读0次

    描述
    求给定二叉树的最大深度,
    深度是指树的根节点到任一叶子节点路径上节点的数量。
    最大深度是所有叶子节点的深度的最大值。

    数据范围:0 \le n \le 1000000≤n≤100000,树上每个节点的val满足 |val| \le 100∣val∣≤100
    要求: 空间复杂度 O(1)O(1),时间复杂度 O(n)O(n)
    示例1
    输入:
    {1,2}
    复制
    返回值:
    2
    复制
    示例2
    输入:
    {1,2,3,4,#,#,5}
    复制
    返回值:
    3

    解题思路及方法

    很简单的递归,根节点高度加上最长的子树高度,一直递归即可。

    import java.util.*;
    
    /*
     * public class TreeNode {
     *   int val = 0;
     *   TreeNode left = null;
     *   TreeNode right = null;
     * }
     */
    
    public class Solution {
        /**
         * 
         * @param root TreeNode类 
         * @return int整型
         */
        public int maxDepth (TreeNode root) {
            // write code here
            if (root == null) return 0;
            
            return 1 + Math.max(maxDepth(root.left), maxDepth(root.right));
        }
    }
    

    结果如下:

    相关文章

      网友评论

          本文标题:NC13 二叉树的最大深度

          本文链接:https://www.haomeiwen.com/subject/wspaoltx.html