跳转至

第 7 章 · 搜索入门

搜索 = 系统地「把所有可能性走一遍」。深度优先(DFS)走到底再回头,广度优先(BFS)像水波一样层层扩散。它们是第 8 章之前最重要的算法武器。

学习目标

  • 理解 DFS 与递归的关系,会画搜索树
  • 掌握全排列、组合类搜索模板
  • 理解 BFS 的层序扩展,会用队列实现 BFS
  • 会用「迷宫最短路」模板,理解 BFS 求最短路的原理
  • 了解基础剪枝

课程规划(编写中)

  • DFS:一条道走到黑,撞墙再回头
  • 全排列与组合的搜索
  • BFS:层层扩散的水波
  • 迷宫最短路
  • 剪枝初步

学习心法

学搜索的秘诀是画图:把搜索过程画成一棵树,代码只是这棵树的翻译。