文章目录
- 题目介绍
- 题解
题目介绍
题解
最小深度:从根节点到最近叶子结点的最短路径上节点数量。
分三种情况讨论即可:
- 当前节点为空,则返回当前节点minDepth=0;
- 当前节点左右子树都存在,则返回当前节点minDepth= 左右子树最小深度的最小值 +1;
- 当前节点的左右子树其中一个不存在,则返回当前节点minDepth= 左右子树最小深度的最大值 +1;
class Solution {
public int minDepth(TreeNode root) {
if(root == null){
return 0;
}
if(root.left != null && root.right != null){
return Math.min(minDepth(root.left), minDepth(root.right)) + 1;
}else{
return Math.max(minDepth(root.left), minDepth(root.right)) + 1;
}
}
}