代码随想录二刷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);
        }
    }
}
相关推荐
blue_blooded13 分钟前
对College数据进行多模型预测(R语言)
开发语言·r语言
努力的小帅24 分钟前
C++_红黑树树
开发语言·数据结构·c++·学习·算法·红黑树
CN-Dust25 分钟前
【C++】指针
开发语言·c++
hweiyu0028 分钟前
学习Scala语言的最佳实践有哪些?
开发语言·学习·scala
CoovallyAIHub34 分钟前
YotoR模型:Transformer与YOLO新结合,打造“又快又准”的目标检测模型
深度学习·算法·计算机视觉
逐花归海.38 分钟前
『 C++ 入门到放弃 』- 哈希表
数据结构·c++·程序人生·哈希算法·散列表
孟大本事要学习40 分钟前
算法第29天|动态规划dp2:不同路径、不同路径Ⅱ、整数拆分、不同的二叉搜索树
算法·动态规划
许野平44 分钟前
Rust:anyhow::Result 与其他 Result 类型转换
服务器·开发语言·rust·result·anyhow
ezl1fe1 小时前
RAG 每日一技(九):你的RAG是“人工智障”还是“真智能”?聊聊RAG的评估
后端·算法
Sammyyyyy1 小时前
Node.js 是怎么一步步撼动PHP地位的
开发语言·node.js·php