代码随想录26|回溯总结

回溯总结:链接地址

回溯三部曲 :参数、终止条件、for遍历(递归、回溯)

模板如下:

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

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

组合问题:

startIndex来控制for循环的起始位置
切割问题:

切割过的地方不能重复切割所以递归函数需要传入i + 1
子集问题:

在树形结构中子集问题是要收集所有节点的结果,而组合问题是收集叶子节点的结果

相关推荐
测试员周周几秒前
【Appium 系列】第12节-智能路由 — API测试 vs UI 测试的自动选择
开发语言·人工智能·python·功能测试·ui·appium·测试用例
liudanzhengxi10 分钟前
AnthropicAPI连接超时:实战避坑指南
开发语言·php
张二娃同学10 分钟前
01_C语言学习路线与开发环境搭建
c语言·开发语言·学习
程序leo源17 分钟前
Qt信号与槽深度详解
c语言·开发语言·数据库·c++·qt·c#
水云桐程序员18 分钟前
C++数组详细介绍
开发语言·c++
码界筑梦坊22 分钟前
123-基于Python的特斯拉超级充电站分布数据可视化分析系统
开发语言·python·信息可视化·数据分析·毕业设计·echarts·fastapi
z2005093022 分钟前
今日算法(二叉树)
数据结构·c++·算法
AI人工智能+电脑小能手26 分钟前
【大白话说Java面试题 第56题】【JVM篇】第16题:JVM有哪些垃圾收集器?
java·开发语言·jvm·面试
南境十里·墨染春水27 分钟前
八大排序算法 - 基数排序
算法·排序算法
老四啊laosi28 分钟前
[滑动窗口] 12. 将 x 减到 0 的最小操作数
算法·leetcode·将 x 减到 0 的最小操作数