进行深度先搜索 (DFS) 和宽度先搜索 (BFS) 的比较和对比.
深度第一搜索 (DFS) 和宽度第一搜索 (BFS) 是两个用于搜索和穿过树和图数据结构的流行的算法.虽然两种算法都有相似的目标,但它们在访问节点和使用它们来跟踪访问和发现节点的顺序上有所不同.DFS在回溯之前通过尽可能多的探索沿着每个分支的图表或树.它从根节点开始,然后在回溯之前尽可能多地沿着每个分支探索.它通过尽可能深入的访问节点,直到没有更多未访问的节点,然后进入分支.DFS使用一个广泛的数据堆结构来跟踪访问节点.这意味着最近发现的节点是第一个.由于其他适合的数据结构 BFS使用一个树或数据图,通过主要节点来总结所有数据,然后在第一阶段探索.由于 BFS使用一个更深的数据结构,然后在第一阶段访问前,它们使用一个更深的数据结构.DFS使用一个更深的数据结构来跟踪前一个新访问节点和其它邻居.