I'll living just like this. Herobrine

Herobrine's life

YCOJ-DFS

DFS搜索是搜索中的一种,即深度优先搜索(Depth First Search),其过程简要来说是对每一个可能的分支路径深入到不能再深入为止,而且每个节点只能访问一次。

图示:

如图,这是邻接矩阵,我们要从s走到e,且“*”不能走,求所有方案。

 

 

 

 

 

 


 

首先,从s出发,标记s


 

然后通过s只能走到下面一个点,重复几次,我们走到了第一个岔路口。


 

这时,我们有两个方向可以走,先向右走。


 

现在只能往下走,到达了e,方案数+1,返回。


 

现在该处理刚才的的另一种方案,向下走。


 


现在只有一个方向走到终点,方案数+1,返回。因为所有能走的点都标记了,结束DFS。

 
所以图的DFS的操作:
  1. 是找到一个点
  2. 搜索它的所有方向的点
  3. 如果点能走,就在他身上继续DFS(递推

所以说DFS是一种算法,它也有很多种,如抽象的DFS,无向图的DFS等等,读者们就自己去钻研了吧。

 

 

posted on 2019-06-09 11:39  herobrine  阅读(266)  评论(0编辑  收藏  举报

导航