Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- http://leetcode.com/onlinejudge#question_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.
- */
- class Solution {
- public:
- int sumNumbers(TreeNode *root, int v = 0) {
- if(NULL == root) { return v; }
- int x = v * 10 + root->val;
- if(!root->left && !root->right)
- {
- return x;
- }
- int L = 0, R = 0;
- if(root->left)
- {
- L = sumNumbers(root->left, x);
- }
- if(root->right)
- {
- R = sumNumbers(root->right, x);
- }
- return L + R;
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment