Leetcode【39】:Combination Sum II
来源:互联网 发布:网络营销 seo 编辑:程序博客网 时间:2024/06/08 18:50
题目:前一题的改进,稍微麻烦些。给一堆数字(可能有重复)和一个target(都是正整数),求组合使数字之和==target。(每个数字只能用一次,组合以升序排列,组合不重复)
分析:可以直接在前一题基础上修改,
class Solution{public:vector<vector<int> > combinationSum2(vector<int> &candidates, int target){sort(candidates.begin(),candidates.end());vector<int> path;vector<vector<int> > res;dfs(candidates,target,0,path,res);return res;}void dfs(vector<int> &can, int left, int start, vector<int> &path, vector<vector<int> > &res){if(left==0){vector<vector<int> >::iterator iter;iter=find(res.begin(),res.end(),path);if(iter==res.end())res.push_back(path);return;//选择了比较懒的方式,直接去查找res中是否已存在path,防止组合重复。}for(int i=start;i<can.size();++i){//循环保证各种可能if(left<can[i])return;path.push_back(can[i]);dfs(can,left-can[i],i+1,path,res);//注意i+1,因为当前数字已经不能选了path.pop_back();}}};
0 0
- Leetcode【39】:Combination Sum II
- LeetCode 39 Combination Sum II
- 39 leetcode - Combination Sum II
- LeetCode: Combination Sum II
- LeetCode: Combination Sum II
- [LeetCode]Combination Sum II
- LeetCode Combination Sum II
- [Leetcode] Combination Sum II
- [LeetCode] Combination Sum II
- LeetCode Combination Sum II
- [Leetcode] Combination Sum II
- LeetCode: Combination Sum II
- leetcode Combination Sum II
- [LeetCode]Combination Sum II
- [leetcode] Combination Sum II
- LeetCode-Combination Sum II
- LeetCode - Combination Sum II
- LeetCode:Combination Sum II
- 我为什么坚持写博客(续)
- 强大的图表绘制工具
- 单件Singleton
- Sublime Text 2 添加到右键
- Ubuntu使用PPPoe上网后显示“设备未托管”(无有线网络连接)
- Leetcode【39】:Combination Sum II
- nginx phase handler的原理和选择
- How to access data/data folder in Android device?
- 调用widgetize url
- ios调用webservice整理
- 图片局部剪切工具
- sap BI webi报表模板:webi报表查询字段 批量查询的EXCEL模板
- 赵雅智_名片夹(6)_仿微信底导航栏
- android Gridview position 0 重复加载