leetCode(36):Sum Root to Leaf Numbers

Given a binary tree containing digits from0-9only, each root-to-leaf path could represent a number.

An example is the root-to-leaf path1->2->3which represents the number123.

Find the total sum of all root-to-leaf numbers.

For example,

1 / \ 2 3

The root-to-leaf path1->2represents the number12.The root-to-leaf path1->3represents the number13.

Return the sum = 12 + 13 =25.

/** * Definition for a binary tree node. * struct TreeNode { *int val; *TreeNode *left; *TreeNode *right; *TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public:void sumNumber(TreeNode* root, int sum,int& result){if (root == NULL) return;//直接返回sum = sum * 10 + root->val;if (root->left == NULL && root->right == NULL){//相加求和返回result += sum;return;}sumNumber(root->left, sum,result);sumNumber(root->right, sum,result);}int sumNumbers(TreeNode* root) {int result = 0;sumNumber(root, 0, result);return result;}};

版权声明:本文为博主原创文章,未经博主允许不得转载。

,接受自己的失败面,是一种成熟,更是一种睿智

leetCode(36):Sum Root to Leaf Numbers

相关文章:

你感兴趣的文章:

标签云: