和客户谈建网站怎么说,qq怎么做放资源的网站,烟台哪家公司可以做网站,免费下载百度软件给定一个二叉树和一个目标和#xff0c;找到所有从根节点到叶子节点路径总和等于给定目标和的路径。 说明: 叶子节点是指没有子节点的节点。 示例: 给定如下二叉树#xff0c;以及目标和 sum 22#xff0c; 5 / \ 4 8 / / \ … 给定一个二叉树和一个目标和找到所有从根节点到叶子节点路径总和等于给定目标和的路径。 说明: 叶子节点是指没有子节点的节点。 示例: 给定如下二叉树以及目标和 sum 22 5 / \ 4 8 / / \ 11 13 4 / \ / \ 7 2 5 1 返回: [ [5,4,11,2], [5,8,4,5] ] 解题思路 /*** 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:vectorvectorint pathSum(TreeNode* root, int sum) {if(!root) return {};vectorvectorint res;dfs(root, sum, {}, res);return res;}void dfs(TreeNode *root, int sum, vectorint curr, vectorvectorint res){if(!root) return;curr.push_back(root-val);if(root-left NULL root-right NULL){if(root-val sum)res.push_back(curr);return;}dfs(root-left, sum - root-val, curr, res);dfs(root-right, sum - root-val, curr, res);}
};