专题:回溯法

专题:回溯法

简介

回溯法是归纳法的一种。其基本思想是:

基本要点

  1. 先找出一种遍历问题的合理方法;

代码模板

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/*
* 回溯法
* 参数:
*     @nums:
*/
bool backtrace(char[] &nums, int x) {
    //退出条件
    if (x == end) {  //到达末尾
        return;
    }
    //进行遍历
    for(int i=0; i<len(nums); i++) {
        //裁剪不合法的情况
        if(!isValid(i)) {
            continue;
        }
        //试探
        dillwith(i)
        //下一级遍历
        backtrace(nums, x+1);
        //回退
        undillwith(i);
        //继续下一个
    }
}

相关题目

参考

  1. 一看就懂,一写就懵?搞懂回溯算法,一口气刷了 20 多道题-云社区-华为云
updatedupdated2024-08-252024-08-25