力扣 中等 216组合总和III

文章目录

题目介绍

解法

是77.组合链接的扩展

java 复制代码
class Solution {
    List<List<Integer>> result= new ArrayList<>();
    List<Integer> path = new ArrayList<>();
    public List<List<Integer>> combinationSum3(int n, int k) {
        dfs(n, k, 1, 0);
        return result;
    }
    public void dfs(int targetSum, int k, int startIndex, int sum){
        if (path.size() == k){
            if (sum == targetSum){
                result.add(new ArrayList<>(path));
            }
            return;
        }
        for (int i = startIndex;i <= 9;i++){
            path.add(i);
            sum += i;
            dfs(targetSum, k, i + 1, sum);
            path.remove(path.size() - 1);
            sum -= i;
        }
    }
}
相关推荐
apcipot_rain11 分钟前
CSP集训错题集 第八周 主题:基础图论
算法·图论
天选之女wow11 分钟前
【代码随想录算法训练营——Day57(Day56周日休息)】图论——53.寻宝
算法·图论
文火冰糖的硅基工坊24 分钟前
[人工智能-大模型-103]:模型层 - M个神经元组成的单层神经网络的本质
python·算法·机器学习
无语子yyds1 小时前
C++双指针算法例题
数据结构·c++·算法
Skrrapper1 小时前
【STL】set、multiset、unordered_set、unordered_multiset 的区别
c++·算法·哈希算法
SunnyKriSmile1 小时前
函数递归求最大值
c语言·算法·函数递归
傻啦嘿哟1 小时前
爬虫数据去重:BloomFilter算法实现指南
爬虫·算法
立志成为大牛的小牛1 小时前
数据结构——三十六、拓扑排序(王道408)
数据结构·学习·程序人生·考研·算法
绛洞花主敏明4 小时前
Go切片的赋值
c++·算法·golang
10001hours5 小时前
初阶数据结构.1.顺序表.通讯录项目(只有源码和注释)
数据结构·算法