LeetCode Path Sum II
2015-02-07 13:59
375 查看
题目
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
与上一题相似,保存当前的探测路径,符合要求时存入即可。
代码
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] ]
与上一题相似,保存当前的探测路径,符合要求时存入即可。
代码
/** * Definition for binary tree * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */ class Solution { vector<vector<int>> ret; //返回值 vector<int> stack; //记录路线堆栈 public: void innerPathSum(TreeNode *root,int sum) //内部递归求解 { if(root==NULL) return; stack.push_back(root->val); //压入当前值 if(root->val==sum&&root->left==NULL&&root->right==NULL) ret.push_back(stack); innerPathSum(root->left,sum-root->val); //递归 innerPathSum(root->right,sum-root->val); stack.pop_back(); //弹出当前值 } vector<vector<int> > pathSum(TreeNode *root, int sum) { ret.clear(); stack.clear(); innerPathSum(root,sum); return ret; } };
相关文章推荐
- 【LeetCode】Path Sum II
- leetcode_middle_88_113. Path Sum II
- LeetCode题解:Path Sum II
- Leetcode:Path Sum与Path Sum II
- [leetcode]Path Sum II
- LeetCode | Path Sum II
- LeetCode:113 Path Sum II
- [LeetCode] Path Sum II
- LeetCode题解:Path Sum I and II
- [LeetCode]Path Sum II
- [LeetCode]题解(python):113-Path Sum II
- LeetCode(113) Path Sum II
- LeetCode_Path Sum II
- [Leetcode] Path Sum II路径和
- leetCode:Path Sum II
- LeetCode113 Path Sum II
- LeetCode 113. Path Sum II
- LeetCode Path Sum II
- LeetCode-Path Sum II
- [LeetCode] Unique Paths、Unique Paths II、Minimum Path Sum