一少年独坐屋中突然顿悟!-回溯

少年击剑更吹箫,剑气箫心一例消。这篇文章主要讲述一少年独坐屋中突然顿悟!-回溯相关的知识,希望能为你提供帮助。
【一少年独坐屋中突然顿悟!-回溯】
目录

//对每一个元素进行回溯 for(int i=first; i< =length; i++) list.add(i); backtrack(i+1,length,list,k); //进行回溯 list.remove(list.size()-1);

上面是随便截取的很常见的回溯操作,这里主要有三种关键操作记录一下:
  • for里面i如果直接i=0,那么递归树是这样一种情况,每一层都可以从头重新取值。
  • 如果for里面i=first,first由我们传值给他,这里传值的时候主要分为i或者i+1,注意啦!i和i+1会对回溯树产生什么影响?
  • 如果是i,那么首先递归树每一层从第二个结点开始就不能包含之前结点已选的数。
  • 如果是i+1,一个很显然的功能也是保证递归树每一层从第二个结点开始就不能包含之前结点已选的数,那么i和i+1的主要区别在于是否当前数可以重复选取!
    一少年独坐屋中突然顿悟!-回溯

    文章图片

    推荐阅读