题解 | #二叉树根节点到叶子节点和为指定值的路径#

二叉树根节点到叶子节点和为指定值的路径

http://www.nowcoder.com/practice/840dd2dc4fbd4b2199cd48f2dadf930a

vector<vector<int> > pathSum(TreeNode* root, int sum) {
        vector<vector<int> > result,left,right;
        if(!root)
            return result;
        if(!root->left&&!root->right&&sum==root->val)
              return {{root->val}};
        if(root->left)
        {
            left=pathSum(root->left,sum-root->val);
            for(auto i : left)
            {
                i.insert(i.begin(), root->val);
                result.push_back(i);
            }
        }
        if(root->right)
        {
            right=pathSum(root->right,sum-root->val);
            for(auto i : right)
            {
                i.insert(i.begin(), root->val);
                result.push_back(i);
            }
        }
        return result;
    }
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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