题解 | #加起来和为目标值的组合(二)#

加起来和为目标值的组合(二)

https://www.nowcoder.com/practice/75e6cd5b85ab41c6a7c43359a74e869a

import java.util.*;
public class Solution {
    private  ArrayList<ArrayList<Integer>> res = new ArrayList<>();

    public ArrayList<ArrayList<Integer>> combinationSum2(int[] num, int target) {
        if (num == null || num.length < 1) {
            return res;
        }
        Arrays.sort(num);
        backtrack(num, 0, target, new ArrayList<>());
        return res;
    }

    private void backtrack(int[] num, int start, int target, List<Integer> list) {
        if (list.size() > 0 && target == 0) {
            res.add(new ArrayList<>(list));
            return;
        }
        for (int i = start; i < num.length; i++) {
            if (target - num[i] < 0) {
                break;
            }
            if (i > start && num[i] == num[i - 1]) {
                continue;
            }
            target -= num[i];
            list.add(num[i]);
            backtrack(num, i + 1, target, list);
            target += num[i];
            list.remove(list.size() - 1);
        }
    }
}

全部评论

相关推荐

05-29 20:34
门头沟学院 C++
KarlAllen:得做好直接春招的准备。学历差的话,一是面试要求会比学历好的严格不少,二是就算面试通过了也会被排序。总之暑期和秋招对于学历差的就是及其不友好
点赞 评论 收藏
分享
风中翠竹:真的真的真的没有kpi。。。面试官是没有任何kpi的,捞是真的想试试看这个行不行,碰碰运气,或者是面试官比较闲现在,没事捞个人看看。kpi算HR那边,但是只有你入职了,kpi才作数,面试是没有的。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务