题目
leetCode 第 104 题,二叉树的最大深度 关联类型:树
给定一个二叉树,找出其最大深度。
二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。
说明: 叶子节点是指没有子节点的节点。
示例:
给定二叉树 [3,9,20,null,null,15,7],
3
/ \
9 20
/ \
15 7
返回它的最大深度 3 。
做题时间
class Solution {
public int maxDepth(TreeNode root) {
}
}
以上给出方法输入参数,完成作答。
题目分析
- 分析可得,当节点不为null,则当前深度为 1
- 每一层的节点都与上面一样,则可得到递归规律
- 当节点为 null,则深度为 0
- 返回左右节点深度最大的结果即可
解答分析
本文只分析本人做题思路,仅供参考,了解一种解题思想,其他各种做题思路请上网查阅。
解答成功:
执行耗时:0 ms,击败了100.00% 的Java用户
内存消耗:38.3 MB,击败了81.60% 的Java用户
class Solution {
public int maxDepth(TreeNode root) {
if (root == null) {
return 0;
} else {
int leftHeight = maxDepth(root.left);
int rightHeight = maxDepth(root.right);
return Math.max(leftHeight, rightHeight) + 1;
}
}
}