Backtracking - HolmesJJ/Data-Structures-and-Algorithms GitHub Wiki

入门链接

带你学透回溯算法(理论篇)| 回溯法精讲!

详解

组合数公式的递归实现,如何分析其时间复杂度? Permutations全排列解析及时间复杂度分析 How to calculate time complexity of backtracking algorithm?

void backtracking(parameters) {
    if (终止条件) {
        // 收集结果
        return;
    }
    for (集合元素) {
        // 处理结点;
        // 递归函数
        // backtracking();
        // 回溯操作;
    }
}

应用场景

  • 组合
  • 切割
  • 子集
  • 排列
  • 棋盘