代码随想录26|回溯总结

回溯总结:链接地址

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

模板如下:

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

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

组合问题:

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

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

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

相关推荐
洛水水3 分钟前
【力扣100题】29. 对称二叉树
算法·leetcode·职场和发展
大熊背11 分钟前
近期遇到的一些问题总结(四)
算法·拍照·白平衡·isp pipeline
神仙别闹11 分钟前
基于PHP+MySQL实现在线考试系统
开发语言·mysql·php
吴声子夜歌13 分钟前
Java——Arrays
java·算法·排序算法
fanzhonghong24 分钟前
javaWeb开发之Maven高级
java·开发语言·spring boot·spring cloud·私服
洛水水24 分钟前
【力扣100题】26. 二叉树的中序遍历
算法·leetcode·深度优先
sheeta199825 分钟前
LeetCode 每日一题笔记 日期:2026.05.11 题目:2553. 分割数组中数字的数位
笔记·算法·leetcode
luck_bor34 分钟前
Lambda表达式 算法异常
java·开发语言
lsx20240635 分钟前
SOAP Envelope 元素
开发语言
范范@37 分钟前
day2-python基础语法
开发语言·python