跳至主要內容
图论

dfs 和 bfs 的区别

深度优先遍历(dfs): 顺着一个方向遍历,就像是不到黄河不回头,直到没有元素了,再换另一个方向继续遍历。

广度优先遍历(bfs): 先遍历与本节点连接的所有节点,然后在遍历与下一个节点相连接的所有节点

其实dfs就是回溯,当遍历到头时,就需要回溯换另一个方向继续遍历。在二叉树中的递归遍历其实就是 dfs,而迭代遍历就是 bfs。

下面通过俩张动图,体会一下dfs和bfs的区别

dfs


鲨瓜...大约 16 分钟算法图论