题解 | #二叉树根节点到叶子节点的所有路径和#

二叉树根节点到叶子节点的所有路径和

http://www.nowcoder.com/practice/185a87cd29eb42049132aed873273e83

典型的DFS求解。

/**
 * struct TreeNode {
 *	int val;
 *	struct TreeNode *left;
 *	struct TreeNode *right;
 * };
 */

class Solution {
public:
    /**
     * 
     * @param root TreeNode类 
     * @return int整型
     */
    int sumNumbers(TreeNode* root) {
        // write code here
        if(!root) return 0;
        return getSum(root, 0);
    }
    int getSum(TreeNode* root, int val)
    {
        if(!root) return 0;
        val = val * 10 + root->val;
        if(!root->left && !root->right) return val;
        int leftSum = getSum(root->left,val) ;
        int rightSum = getSum(root->right, val);
        return leftSum + rightSum;
        
    }
};
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务