代码随想录二刷day24

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


前言


一、回溯法模板

java 复制代码
void backtracking(参数) {
    if (终止条件) {
        存放结果;
        return;
    }

    for (选择:本层集合中元素(树中节点孩子的数量就是集合的大小)) {
        处理节点;
        backtracking(路径,选择列表); // 递归
        回溯,撤销处理结果
    }
}

二、力扣77. 组合

java 复制代码
class Solution {
    List<List<Integer>> res = new ArrayList<>();
    List<Integer> group = new ArrayList<>();
    public List<List<Integer>> combine(int n, int k) {
        bracking(1, n, k);
        return res;
    }
    public void bracking(int start ,int n, int k){
        if(group.size() == k){
            res.add(new ArrayList<>(group));
            return;
        }
        for(int i = start; i <= n; i ++){
            group.add(i);
            bracking(i+1, n, k);
            group.remove(group.size()-1);
        }
    }
}
相关推荐
7yewh1 分钟前
SLAM 从视觉里程计到建图(6)
数据结构·人工智能·机器人·自动驾驶·嵌入式
程序员清风12 分钟前
pandas 核心数据结构:Series 与 DataFrame
数据结构·pandas
殷色玫瑰18 分钟前
C语言编译和链接:从 .c到 .exe,程序到底经历了什么?
linux·c语言·c++·算法
蜗牛互联网19 分钟前
从GitHub动态工作流理解确定性编排与Agent判断边界
java·人工智能·后端·github
keep intensify22 分钟前
C++20线程池
c++·算法·c++20
菜鸟~noob23323 分钟前
【太空电子战】午夜锤行动中的电磁静默区:可逆干扰的实战验证【含matlab代码】
linux·开发语言·matlab·电子战
开开心心就好36 分钟前
办公软件卸载不干净?专用工具一键清残留
java·前端·人工智能·智能手机·kafka·excel·memcache
大侠归来38 分钟前
C 与 Go 语言对比:从设计哲学到工程实践
java·c语言·golang
坤坤子吖1 小时前
Python基础语法学习:条件、循环与程序控制
开发语言·笔记·python·学习
奋发向前wcx1 小时前
CSP-J复赛模拟赛2 王晨旭补题 2026.10.3
算法