题目描述

方法思路
public class Solution {
//真是个莫名其妙的的题目
//Runtime: 3 ms, faster than 100.00%
//Memory Usage: 40.8 MB, less than 10.53%
int tilt=0;
public int findTilt(TreeNode root) {
traverse(root);
return tilt;
}
public int traverse(TreeNode root)
{
if(root==null )
return 0;
int left=traverse(root.left);
int right=traverse(root.right);
//全局变量tilt,根节点坡度就是所有节点坡度之和
tilt+=Math.abs(left-right);
//返回的是子树节点之和
return left+right+root.val;
}
}

本文介绍了一种求解二叉树中所有节点坡度之和的方法,通过递归遍历树结构,计算每个节点左右子树节点值之和的差的绝对值,即为该节点的坡度。最终返回整棵树的总坡度。
137

被折叠的 条评论
为什么被折叠?



