LeetCode--Combination Sum
2014-08-03 16:42
148 查看
题目链接:
https://oj.leetcode.com/problems/combination-sum/
思路:
题目要求合并的答案需要升序排序。所以先排序,然后每次选一个,递归处理。
注意:每个元素可以多次,然后不能有重复的答案,所以碰到处理过的元素就不处理了。
https://oj.leetcode.com/problems/combination-sum/
思路:
题目要求合并的答案需要升序排序。所以先排序,然后每次选一个,递归处理。
注意:每个元素可以多次,然后不能有重复的答案,所以碰到处理过的元素就不处理了。
class Solution { public: vector<vector<int> >ans; vector<vector<int> > combinationSum(vector<int> &candidates, int target) { if(candidates.size() == 0) return ans; sort(candidates.begin(),candidates.end()); deque<int> res; calSum(candidates,target,0,res); return ans; } void calSum(vector<int> &candidates,int target,int s,deque<int> &res) { if(target < 0) return; if(target == 0) { vector<int> restmp(res.begin(),res.end()); ans.push_back(restmp); return; } int i; for(i = s ; i < candidates.size() ; ++i) { if(i > 0 && (candidates[i] == candidates[i-1]) ) continue; res.push_back(candidates[i]); calSum(candidates,target-candidates[i],i,res); res.pop_back(); } return; } };
相关文章推荐
- Leetcode 39 Combination Sum
- leetcode 39: Combination Sum
- LeetCode-39-Combination Sum(DFS)-Medium
- 回溯详解及其应用:Leetcode 39 combination sum
- [leetcode]Combination Sum
- LEETCODE: Combination Sum
- 【leetcode】Combination Sum
- Leetcode 39 - Combination Sum
- LeetCode Online Judge 题目C# 练习 - Combination Sum
- [leetCode] Combination Sum
- 算法。递归。之一: combination sum, leetcode
- LeetCode-Combination Sum
- [LeetCode] 017: Combination Sum
- leetcode--Combination Sum
- LeetCode 39 - Combination Sum
- LeetCode-- Combination Sum
- [LeetCode] Combination Sum
- [Leetcode] Combination Sum
- LeetCode-Combination Sum-组合加和-回溯
- [leetcode刷题系列]Combination Sum