LeetCode 129 Sum Root to Leaf Numbers

来源:互联网 发布:java递归算法40例 编辑:程序博客网 时间:2024/05/29 03:40

题目









题解


/** * 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:    int sumNumbers(TreeNode* root) {       if(root == NULL)            return 0;        if(root->left == NULL && root->right == NULL)            return root->val;        if(root->left == NULL){            root->right->val = root->val*10 + root->right->val;            return sumNumbers(root->right);         }        if(root->right == NULL){            root->left->val = root->val*10 + root->left->val;            return sumNumbers(root->left);         }        root->right->val = root->val*10 + root->right->val;        root->left->val = root->val*10 + root->left->val;        return sumNumbers(root->right) + sumNumbers(root->left);    }};



0 0