【LeetCode】Path Sum II
来源:互联网 发布:cots软件 编辑:程序博客网 时间:2024/06/12 00:00
Given a binary tree and a sum, find all root-to-leaf paths where each path's sum equals the given sum.
For example:Given the below binary tree and
sum = 22
,5 / \ 4 8 / / \ 11 13 4 / \ / \ 7 2 5 1
return
[ [5,4,11,2], [5,8,4,5]]思路:同Path Sum
/** * Definition for binary tree * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: vector<vector<int> > pathSum(TreeNode *root, int sum) { vector<vector<int> > vii,vvi; vector<int> vi; if(root==NULL)return vii; if((root->right==NULL)&&(root->left==NULL)){ if(sum==root->val){ vi.push_back(sum); vii.push_back(vi); return vii; } else return vii; } else if(root->left==NULL){ vii=pathSum( root->right, sum-root->val); if(vii.size()>0){ for(int i=0;i<vii.size();i++){ vector<int>::iterator it=vii[i].begin(); vii[i].insert(it,root->val); } return vii; } } else if(root->right==NULL){ vii=pathSum( root->left, sum-root->val); if(vii.size()>0){ for(int i=0;i<vii.size();i++){ vector<int>::iterator it=vii[i].begin(); vii[i].insert(it,root->val); } return vii; } }else{ vii=pathSum( root->right, sum-root->val); if(vii.size()>0){ for(int i=0;i<vii.size();i++){ vector<int>::iterator it=vii[i].begin(); vii[i].insert(it,root->val); } } vvi=pathSum( root->left, sum-root->val); if(vvi.size()>0){ for(int i=0;i<vvi.size();i++){ vector<int>::iterator it=vvi[i].begin(); vvi[i].insert(it,root->val); } } for(int i=0;i<vvi.size();i++){ vii.push_back(vvi[i]); } return vii; } }};
0 0
- LeetCode: Path Sum II
- LeetCode Path Sum II
- [Leetcode] Path Sum II
- LeetCode: Path Sum II
- [LeetCode] Path Sum II
- 【leetcode】Path Sum II
- [LeetCode]Path Sum II
- [Leetcode]Path Sum II
- [leetcode]Path Sum II
- Leetcode: Path Sum II
- LeetCode-Path Sum II
- [leetcode] Path Sum II
- LeetCode - Path Sum II
- [LeetCode] Path Sum II
- Leetcode Path Sum II
- LeetCode | Path Sum II
- 【leetcode】Path Sum II
- [LeetCode] Path Sum II
- iTunes Connect中的Contracts, Tax, and Banking设置
- B树、B-树、B+树、B*树
- 对团队中“这是某某某的问题”引起的思考
- 求助,Eclipse reports rendering library more recent than ADT plug-in.Please update ADT plug-in,安装插件后期报错
- java反射示例
- 【LeetCode】Path Sum II
- 简单Html
- 二维数组
- 二叉树的三个算法
- 我编程我快乐——读后感(第一部分之选择市场)
- 青蛙的约会
- 黑马程序员-----------------集合框架-Set
- 教你如何学习自动化测试(QTP)转 自席飞剑
- 有向图邻接表表示及反向图构造