Наклон бинарного дерева (leetcode) - PullRequest
0 голосов
/ 18 марта 2019

Этот вопрос касается проблемы Leetcode # 563. Binary Tree Tilt код ниже работает отлично.

Тем не менее, я не понимаю значимости возвращаемого значения метода -> sumOfTilts (узел TreeNode)

Почему значение возвращаемого значения => (left + right + node.val)? Где / как используется это возвращаемое значение?

в конце концов, функция возвращает just - tilt (т.е. сумма наклонов левой и правой ветвей рекурсивного корневого узла)

Любая помощь по этому вопросу приветствуется!

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

...