这个题目开始要想是用递归,但是递归的形式,没有想对。直接判断left right 比较麻烦,不如在递归调用的时候判断root是否为空。
public class Solution {
public int maxDepth(TreeNode root) {
if(root==null){
return 0;
}
int led = maxDepth(root.left);
int rid = maxDepth(root.right);
return led>rid?led+1:rid+1;
}
}
而且C++写多了,null是小写都不记得了,与其判断right 跟left不如让递归判断传进来的参数是否为空,这样返回的东西就简单很多了,这么简单的问题都写不对 !!
算了加油吧,鹿小葵加油!