Sum Root to Leaf Numbers

The root-to-leaf path 1->2 represents the number 12. The root-to-leaf path 1->3 represents the number 13. Return the sum = 12 + 13 = 25.

  • Time: O(N)
  • Space: O(1)
public int sumNumbers(TreeNode root) {
    return helper(root, 0);
}

private int helper(TreeNode node, int sum) {
    if (node == null) {
        return 0;
    }
    sum = sum * 10 + node.val;
    if (node.left == null && node.right == null) {
        return sum;
    }
    return helper(node.left, sum) + helper(node.right, sum);
}

results matching ""

    No results matching ""