[leetcode]39. Combination Sum(Java)
来源:互联网 发布:mac os x 10.5.8 编辑:程序博客网 时间:2024/06/06 02:27
leetcode:https://leetcode.com/problems/combination-sum/#/description
Given a set of candidate numbers (C) (without duplicates) and a target number (T), find all unique combinations in C where the candidate numbers sums to T.
The same repeated number may be chosen from C unlimited number of times.
Note:
- All numbers (including target) will be positive integers.
- The solution set must not contain duplicate combinations.
For example, given candidate set [2, 3, 6, 7]
and target 7
,
A solution set is:
[ [7], [2, 2, 3]]
Subscribe to see which companies asked this question.
JavaCode:
package go.jacob.day621;import java.util.ArrayList;import java.util.Arrays;import java.util.List;/** * [leetcode]39. Combination Sum * * @author Administrator * */public class Demo3 {public List<List<Integer>> combinationSum(int[] candidates, int target) {List<List<Integer>> res = new ArrayList<List<Integer>>();if (candidates == null || candidates.length < 1)return res;Arrays.sort(candidates);backtrack(candidates, target, res, new ArrayList<Integer>(), 0);return res;}// 如果不加参数start,会出现:input:[2,3,6,7]7// 结果:[[2,2,3],[2,3,2],[3,2,2],[7]]instead of [[2,2,3],[7]]的情况private void backtrack(int[] nums, int target, List<List<Integer>> res, ArrayList<Integer> list, int start) {if (target < 0)return;if (target == 0) {res.add(list);return;}//加上target >= nums[i]:33ms to 23msfor (int i = start; i < nums.length && target >= nums[i]; i++) {list.add(nums[i]);backtrack(nums, target - nums[i], res, new ArrayList<Integer>(list), i);list.remove(list.size() - 1);}}}
阅读全文
0 0
- (Java)LeetCode-39. Combination Sum
- leetcode-java-39. Combination Sum
- [LeetCode-Java]39. Combination Sum
- [leetcode]39. Combination Sum(Java)
- [Leetcode] Combination Sum (Java)
- [LeetCode][Java] Combination Sum
- LeetCode : Combination Sum [java]
- leetcode:Combination Sum 【Java】
- Leetcode Java-Combination Sum
- Leetcode 39. Combination Sum (Medium) (java)
- [LeetCode]39.Combination Sum
- LeetCode --- 39. Combination Sum
- LeetCode 39.Combination Sum
- [Leetcode] 39. Combination Sum
- Leetcode-39.Combination Sum
- LeetCode 39. Combination Sum
- [LeetCode]39. Combination Sum
- 39. Combination Sum LeetCode
- 道德与规则绑架了社会
- 结构体与共用体的内存分配问题
- (总结)关于Linux的缓存内存 Cache Memory详解
- scala控制结构
- springMVC多数据库配置
- [leetcode]39. Combination Sum(Java)
- 不同浏览器jsp开发兼容问题
- Webdriver Selenium与Firefox 版本兼容
- 【解决方案】关于Extjs下拉框不显示的问题
- 工厂方法模式(Factory Method)(对象创建型模式)
- vim命令合集
- Atomic、ThreadLocal、Volatile、synchronized总结
- linux下编译lua源码
- 自适应分辨率