代码随想录26|回溯总结

回溯总结:链接地址

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

模板如下:

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

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

组合问题:

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

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

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

相关推荐
一个有温度的技术博主4 分钟前
Redis Cluster 核心原理:哈希槽与数据路由实战
redis·算法·缓存·哈希算法
551只玄猫8 分钟前
【数学建模 matlab 实验报告10】插值
开发语言·数学建模·matlab·课程设计·插值·实验报告
I疯子11 分钟前
2026-04-08 打卡第 5 天
开发语言·windows·python
wfbcg15 分钟前
每日算法练习:LeetCode 15. 三数之和 ✅
算法·leetcode·职场和发展
2301_8227032021 分钟前
开源鸿蒙跨平台Flutter开发:跨端图形渲染引擎的类型边界与命名空间陷阱:以多维雷达图绘制中的 dart:ui 及 StrokeJoin 异常为例
算法·flutter·ui·开源·图形渲染·harmonyos·鸿蒙
游乐码21 分钟前
c#ArrayList
开发语言·c#
y = xⁿ22 分钟前
【LeetCode Hot100】双指针:分离指针
算法·leetcode
学习永无止境@23 分钟前
Verilog中有符号数计算
图像处理·算法·fpga开发
C+++Python24 分钟前
Python MCP Server 最简实现
开发语言·python
6Hzlia27 分钟前
【Hot 100 刷题计划】 LeetCode 41. 缺失的第一个正数 | C++ 原地哈希题解
c++·leetcode·哈希算法