深度优先搜索基本模型模板


深度优先搜索的关键在于解决“当下该如何做”。至于“下一步如何做”则与“当下如何做”是一样的。

dfs(step)函数的主要功能就是解决当你在第step种条件时你该怎么办,通常的方法就是把每一种可能去尝试一遍(一般使用for循环遍历)。当前这一步解决后便进入下一步dfs(step+1),下一步的解决方法和当前这步的解决方法是完全一样的。

下面代码就是深度优先搜索的基本模型:

每一次尝试就是一种“扩展”,每次站在一种可能面前的时候,其实都有n种扩展方法,但是并不是每种扩展都能够扩展成功。

相关