Sum root to leaf numbers

来源:互联网 发布:皇甫圣华的淘宝店 编辑:程序博客网 时间:2024/06/16 11:28

Given a binary tree containing digits from 0-9 only, each root-to-leaf path could represent a number. An example is the root-to-leaf path 1->2->3 which represents the number 123. Find the total sum of all root-to-leaf numbers. For example, 1 / \ 2 3 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.

注意已经是叶子节点的情况!!

public class Solution {    public int sumNumbers(TreeNode root) {        return helper(root, 0);    }        public int helper(TreeNode root, int pre){        if (root == null) {            return 0;        }                int res = pre * 10 + root.val;        if (root.left == null && root.right == null) {            return res;        }        return helper(root.left, res) + helper(root.right, res);    }}


0 0
原创粉丝点击