Path Sum II(leetcode)
2014-11-07 17:29
323 查看
题目:
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
return
题目来源:https://oj.leetcode.com/problems/path-sum-ii/
解题思路:用先序遍历进行深搜
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] ]
题目来源:https://oj.leetcode.com/problems/path-sum-ii/
解题思路:用先序遍历进行深搜
#include<iostream> #include<vector> using namespace std; struct TreeNode { int val; TreeNode *left; TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) {} }; //先序遍历 void dfs(TreeNode *root,int temp,vector<int> &result,vector<vector<int> > &results,int sum) { if(root==NULL) return ; temp+=root->val; result.push_back(root->val); if(root->left==NULL && root->right==NULL) { if(temp==sum) { results.push_back(result); result.pop_back(); return ; } } dfs(root->left,temp,result,results,sum); dfs(root->right,temp,result,results,sum); result.pop_back(); } vector<vector<int> > pathSum(TreeNode *root, int sum) { vector<vector<int> >results; if(root==NULL) return results; vector<int> result; dfs(root,0,result,results,sum); return results; } int main() { TreeNode *root=new TreeNode(-2); // root->left=new TreeNode(2); root->right=new TreeNode(-3); vector<vector<int> > results=pathSum(root,-5); system("pause"); return 0; }
相关文章推荐
- LeetCode 113. Path Sum II DFS求解
- leetcode: Path Sum II
- leetcode Path Sum II
- 2017.10.29 LeetCode - 113. Path Sum II【DFS的运用】【补】
- leetcode做题总结,动态规划I(Triangle,Unique PathsI/II,Minimum Path Sum,Climbing Stairs,Jump Game,Word Break)
- 【Leetcode】Path Sum II
- [LeetCode]Path Sum II
- functionclass[LeetCode]Path Sum II
- Leetcode | Path Sum I && II
- leetCode 113. Path Sum II 二叉树问题 | Medium
- [LeetCode] Path Sum II 二叉树路径之和之二
- LeetCode-Path Sum II
- LeetCode Path Sum II路径和II
- [leetcode] Path Sum II
- leetcode---Path Sum II---回溯
- Leetcode 113. Path Sum II 路径和2 解题报告
- #leetcode#Path Sum II
- 【LeetCode】Path Sum II
- [leetcode]Path Sum II
- leetcode 刷题之路 66 Path Sum II