129. Sum Root to Leaf Numbers

Posted 张乐乐章

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了129. Sum Root to Leaf Numbers相关的知识,希望对你有一定的参考价值。

 

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.

 

 

 1 class Solution {
 2     public int sumNumbers(TreeNode root) {
 3      return sum(root,0);
 4     }
 5     private int sum(TreeNode root,int s) {
 6         //s 上一层的累积和
 7         if(root==null) return 0;
 8         if(root.left==null && root.right==null) //遍历到叶子节点 
 9             return s*10+root.val;
10         return sum(root.left,s*10+root.val)+sum(root.right,s*10+root.val);
11     }
12 }

 

以上是关于129. Sum Root to Leaf Numbers的主要内容,如果未能解决你的问题,请参考以下文章