DFS(深度优先搜索 || 回溯算法)

DFS算法其实就是回溯算法。
用DFS解决一个决策树的遍历过程,你需要考虑3点
1 路径: 已经做出的选择
2 可选项: 当前可做的选择
3 结束条件: 到底决策树底层

基本格式

result = []
backtrack(路径   ,  可选项){
    if(满足结束条件){ 
      result.add(路径);
      return;
     }
     for(选择 : 可选项){
        做选择
        backtrack(路径  ,  可选项);
        撤销选择
      }
}

你可能感兴趣的:(DFS(深度优先搜索 || 回溯算法))