LeetCode40:组合总和②

题目描述
给定一个候选人编号的集合 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。

candidates 中的每个数字在每个组合中只能使用 一次 。

注意:解集不能包含重复的组合。

在这里插入图片描述

解题思想
使用回溯思想,可能会出现重复的,需要进行去重操作。

代码

class Solution {
public:
    vector<int>path;
    vector<vector<int>> res;
    int sum = 0;

    void backTracking(vector<int>& candidates, int target, int startIndex) {
        if (sum > target)
            return;

        if (sum == target) {
            res.push_back(path);
            return;
        }

        for (int i = startIndex; i < candidates.size(); i++) {

            //要对同一树层使用过的元素进行跳过
            if (i > startIndex && candidates[i] == candidates[i - 1] )
                continue;

            sum += candidates[i];
            path.push_back(candidates[i]);
            backTracking(candidates, target, i + 1);
            sum -= candidates[i];
            path.pop_back();
        }
    }

    vector<vector<int>> combinationSum2(vector<int>& candidates, int target) {
        if (candidates.size() == 0) return res;

        //让相同的元素相邻
        sort(candidates.begin(), candidates.end());

        backTracking(candidates, target, 0);
        return res;
    }
};

相关推荐

  1. leetcode 40. 组合总和 II

    2024-04-22 10:52:05       60 阅读
  2. LeetCode40. 组合总和 II

    2024-04-22 10:52:05       60 阅读
  3. leetcode_40.组合总和 II

    2024-04-22 10:52:05       33 阅读
  4. leetcode 40. 组合总和 II

    2024-04-22 10:52:05       46 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-22 10:52:05       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-22 10:52:05       101 阅读
  3. 在Django里面运行非项目文件

    2024-04-22 10:52:05       82 阅读
  4. Python语言-面向对象

    2024-04-22 10:52:05       91 阅读

热门阅读

  1. 勒索病毒防护

    2024-04-22 10:52:05       34 阅读
  2. spring事务失效场景

    2024-04-22 10:52:05       37 阅读
  3. Linux内核驱动开发-001字符设备开发-001Led驱动

    2024-04-22 10:52:05       29 阅读
  4. RabbitMQ和Minio实现头像存储

    2024-04-22 10:52:05       41 阅读
  5. Ruby中Rack中间件的使用场景和注意事项

    2024-04-22 10:52:05       34 阅读
  6. 浏览器生成Excel文件 ,Apache POI 使用方法及示例

    2024-04-22 10:52:05       39 阅读
  7. Hive字符串匹配函数 LIKE 和 RLIKE 使用示例

    2024-04-22 10:52:05       34 阅读
  8. web server apache tomcat11-06-Host Manager App

    2024-04-22 10:52:05       33 阅读
  9. 发送钉钉、邮件、手机信息

    2024-04-22 10:52:05       35 阅读