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

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

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

/**
 * 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
        return dfs(root, 0);
    }
    //该递归函数的含义为
    //返回以root为根节点的二叉树所有路径和,其中pre是root的父节点的权值
    int dfs(TreeNode*root,int pre)
    {
        if(root==NULL)
            return 0;
        int sum=pre*10+root->val;
        if(root->left==NULL&&root->right==NULL)
            return sum;
        else return dfs(root->left, sum)+dfs(root->right, sum);
    }
};
全部评论

相关推荐

04-15 23:42
中山大学 Java
ResourceUtilization:过几天楼主就会捧着一堆offer来问牛友们该怎么选辣
点赞 评论 收藏
分享
刘湘_passion:出国旅游?那就小心你的腰子咯
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务