此问题与Leetcode问题563有关。二叉树倾斜 下面的代码可以正常工作。
但是,我不明白方法返回值的重要性-> sumOfTilts(TreeNode节点)
为什么返回值的重要性=>(左+右+ node.val)? 此返回值在哪里/如何使用?
最终,该函数仅返回-倾斜度(即递归根节点左右分支的倾斜度之和)
对此有任何帮助,我们深表感谢!
public int findTilt(TreeNode root) {
if(root == null) return 0;
if(root.left == null && root.right == null) return 0;
sumOfTilts(root);
return tilt;
}
public int sumOfTilts(TreeNode node){
if(node == null) return 0;
int left = sumOfTilts(node.left);
int right = sumOfTilts(node.right);
tilt += Math.abs(left - right);
return left + right + node.val;
}
enter code here