DFS
1、DFS(深度优先搜索),“深度优先的含义”是优先往某一个方向
搜索,其他未搜索到的在这个方向搜索到底后再返回一个一个的搜索。
2、类似一棵树的前序遍历
;
3、适合目标明确,以找到目标为主要目的的情况。
回溯
回溯与DFS的关系,和回溯问题的解法参考这
总的来说:DFS 是一个劲的往某一个方向搜索,而回溯算法是建立在 DFS 基础之上的
,但不同的是在搜索过程中,达到结束条件后,恢复状态,回溯上一层,再次搜索。因此回溯算法与 DFS 的区别就是有无状态重置
。
BFS
1、BFS(广度优先搜索),具有层次搜索;
2、类似树的层序遍历
;
3、适合在不断扩大遍历范围时找到相对最优解的情况。