简单的树形bp,且返回值只有一个。
看见题第一反应都是递归 ,所以要确定递归的返回值是什么,本题的返回值是该子树的值加上其左子树和右子树的值,确定了递归返回值,本题的答案也就呼之欲出了
class Solution {
private int res;
public int findTilt(TreeNode root) {
process(root);
return res;
}
public int process(TreeNode cur){
if(cur==null){
return 0;
}
int left = process(cur.left);
int right = process(cur.right);
res += Math.abs(left-right);
return left + right + cur.val;
}
}