DFS与BFS总结
总结
bfs多用于在一次选择中可以有多种情况的选择
而dfs是确定唯一性如唯一路径,也就是深度
当问题是全盘式的搜索,不在乎形式或者具体情况呈现还是详细过程的,使用bfs
当问题是要求具体过程,还有类似于1条线一直往下延申的使用dfs
一直往下延申为一种情况的就用dfs,
如果是广泛的,需要大量枚举的就用bfs
dfs在于具体和精准
bfs在于广泛和多种情况讨论,但是细节就会模糊
两个方法最好是能够准确使用,一旦用错就会很难解决问题
具体来说,就是dfs就是对一种情况的深度考虑,这样就不会有其他情况打岔,想要的内容就不会乱
所以存储的内容都是关于这一种情况的,有序的存放。
而bfs就是每次的所有情况的考虑,这样就会混乱,一旦没有明显的标记区分彼此,你就不可能会有序的存放数据
所以就没有办法解决问题
bfs针对所有情况的枚举罗列,而dfs是针对一种情况的深度考虑,一定要区分好他们其实有很大区别.
具体例子见
https://blog.csdn.net/ASBSIHD/article/details/130371555?spm=1001.2014.3001.5502
https://blog.csdn.net/ASBSIHD/article/details/130232418?spm=1001.2014.3001.5502