二叉树的倾斜(代码)

时间:2019-03-18 02:44:59

标签: data-structures tree

此问题与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

0 个答案:

没有答案