一,广度优先遍历,又称为广度优先搜索,简称BFS。举例说明,在一套房子里找一个钥匙,利用深度优先搜索就是搜索每一个房间,而广度优先搜索,是先看看钥匙有没有放在各个房间的明显位置,如果没有,再看看各个房间的抽屉有没有,这样逐步扩大查找的范围的方式我们称之为广度优先搜索。
图1 示例图
从图1中可以看到右边的图形看着很整洁好看,深度优先遍历类似于树的前序遍历,广度优先遍历就类似于右边的树的层序遍历,一层一层逐步往下直到遍历完所有的顶点为止。要是实现图1中右边的图的遍历,可以使用队列来实现:
一,广度优先遍历,又称为广度优先搜索,简称BFS。举例说明,在一套房子里找一个钥匙,利用深度优先搜索就是搜索每一个房间,而广度优先搜索,是先看看钥匙有没有放在各个房间的明显位置,如果没有,再看看各个房间的抽屉有没有,这样逐步扩大查找的范围的方式我们称之为广度优先搜索。
图1 示例图
从图1中可以看到右边的图形看着很整洁好看,深度优先遍历类似于树的前序遍历,广度优先遍历就类似于右边的树的层序遍历,一层一层逐步往下直到遍历完所有的顶点为止。要是实现图1中右边的图的遍历,可以使用队列来实现: