标签:leetcode
链接:https://leetcode.com/problems/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.
Hide Tags Tree Depth-first Search
class Solution {
public:
int sumNumbers(TreeNode* root) {
int result=0;
sum(root,0,result);
return result;
}
void sum(TreeNode* root,int val,int &result)
{
if(root!=NULL)
{
val=val*10+root->val;
if(root->left==NULL&&root->right==NULL)
{
result+=val;
return ;
}
sum(root->left, val,result);
sum(root->right, val,result);
}
}
};
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:leetcode
原文地址:http://blog.csdn.net/efergrehbtrj/article/details/47772223