在这个题目中,太容易与最大深度有重复的想法了,会默认为有一个空白的节点,来比较,其实没有那个空白的节点,如果左边节点为空,那么这个节点的右边节点成为他的子树,不存在一个空白的来将右边的节点减去。所以这个题目除了要判断是不是叶节点之外,还要判断是左右节点是否为空。
public class Solution {
public int run(TreeNode root) {
if(root == null){
return 0;
}
int le = run(root.left);
int ri = run(root.right);
if(root.left==null){
return ri+1;
}else if(root.right == null){
return le+1;
}
return le<ri?le+1:ri+1;
}
}