LeetCode 40. Combination Sum II
来源:互联网 发布:知乎奇葩问题大全 编辑:程序博客网 时间:2024/05/29 17:43
LeetCode 40. Combination Sum II
Given acollection of candidate numbers (C) and a target number (T),find all unique combinations in C where the candidatenumbers sums to T.
Each numberin C may only be used once in thecombination.
Note:
- All numbers (including target) will be positive integers.
- The solution set must not contain duplicate combinations.
For example,given candidate set [10, 1, 2, 7, 6, 1, 5] andtarget 8,
A solution set is:
[
[1,7],
[1, 2, 5],
[2,6],
[1,1, 6]
]
Bfs深度优先科技解决,注意下可能会重复
比如这里我可以选第一个1和7 也可以选第二个1和7
代码:
class Solution {public: vector<vector<int>>res; vector<vector<int>>combinationSum2(vector<int>& candidates, inttarget) { if(candidates.size() == 0) return res; vector<int>ans(candidates.size()); sort(candidates.begin(),candidates.end()); bfs(candidates,0, ans, 0, target); returnres; } voidbfs(vector<int>& candidates, int candidatesIndex, vector<int>&ans, int ansIndex, int target) { if(target==0) { vector<int>tmp(ans.begin(), ans.begin() + ansIndex); res.push_back(tmp); return; } if(candidatesIndex >= candidates.size()||candidates[candidatesIndex] >target) return; for(int i = candidatesIndex; i < candidates.size(); i++) { if(i > candidatesIndex&&candidates[i] == candidates[i - 1]) continue; ans[ansIndex]= candidates[i]; bfs(candidates,i + 1, ans, ansIndex + 1, target - candidates[i]); } }};
阅读全文
0 0
- [LeetCode]40.Combination Sum II
- LeetCode --- 40. Combination Sum II
- LeetCode 40.Combination Sum II
- [Leetcode] 40. Combination Sum II
- LeetCode 40. Combination Sum II
- [leetcode] 40. Combination Sum II
- 40. Combination Sum II LeetCode
- leetcode 40. Combination Sum II
- Leetcode 40. Combination Sum II
- LeetCode 40. Combination Sum II
- leetcode 40. Combination Sum II
- LeetCode 40. Combination Sum II
- LeetCode 40. Combination Sum II
- LeetCode *** 40. Combination Sum II
- 【LeetCode】40. Combination Sum II
- leetcode 40. Combination Sum II
- LeetCode - 40. Combination Sum II
- [LeetCode] 40. Combination Sum II
- 问题:一对多或者多对多,老是报空指针异常
- JSP传到后台乱码的3中方法
- HDU 3836 Equivalent Sets(强连通+缩点,tarjan)
- Java匿名类
- jsPlumb流程图插件
- LeetCode 40. Combination Sum II
- MAC OSX 正確地同時安裝 PYTHON 2.7 和 PYTHON3
- 2017北京国际军民融合装备展览会会刊(参展商名录)
- 移动应用广告之商业变现的实现策略
- axios Get和POST方法
- NBUT
- 获取应用程序根目录物理路径(Web and Windows)
- 802.11协议帧格式、Wi-Fi连接交互过程、无线破解入门研究
- 防止from表单重复提交