回溯总结

回溯算法模板:

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

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

主要是解决下列问题:

1.组合问题

2.切割问题

3.子集问题

4.排列问题

5.去重问题

待复刷

相关推荐
adam_life5 天前
http://noi.openjudge.cn/——4.7算法之搜索——【169:The Buses】
算法·回溯·递归深搜·线路判断
秋已杰爱7 天前
递归练习三(决策树)
算法·决策树·递归·二叉树‘
robin_suli9 天前
穷举vs暴搜vs深搜vs回溯vs剪枝系列一>优美的排列
算法·剪枝·深度优先遍历·回溯
xiao--xin12 天前
LeetCode100之括号生成(22)--Java
java·开发语言·算法·leetcode·回溯
robin_suli15 天前
穷举vs暴搜vs深搜vs回溯vs剪枝系列一>字母大小写全排列
算法·剪枝·深度优先遍历·回溯
xiao--xin15 天前
LeetCode100之组合总和(39)--Java
java·开发语言·算法·leetcode·回溯
硕风和炜19 天前
【LeetCode: 112. 路径总和 + 二叉树 + 递归】
java·算法·leetcode·面试·二叉树·递归
robin_suli21 天前
穷举vs暴搜vs深搜vs回溯vs剪枝系列一>
算法·剪枝·深度优先遍历·回溯
robin_suli24 天前
穷举vs暴搜vs深搜vs回溯vs剪枝系列一>括号生成
算法·剪枝·深度优先遍历·回溯
robin_suli1 个月前
穷举vs暴搜vs深搜vs回溯vs剪枝系列一>组合
算法·剪枝·深度优先遍历·回溯