【图的遍历】
图的遍历是一个过程,什么样的过程呢?
现在给你一个图和其中任意一个结点v,从v出发系统地访问图G的所有的结点,且使每个结点仅被访问一次的过程。
【地位】
实现图的其他操作的基础。
【与树的遍历的关系】
相似点:图也有两种遍历的方法,分别是DFS(深度优先搜索)和BFS(宽度优先搜索);
不同点:图的遍历会遇到两个麻烦,分别是不能到达所有顶点和在回路中无限循环。
【算法特征】
为图的每个顶点保留一个标志位:
①算法开始时,所有顶点的标志位清零;
②遍历过程中,将被访问的点的标志位进行标记,在搜索中遇到被标记过的顶点不再访问;
③搜索结束后,若有尚未标记过的顶点,遍历算法选择其中任意一个,从它开始继续搜索。
【生成树&图的遍历】
图的宽度/深度优先搜索生成树:按照BFS/DFS方法,图中所有顶点,以及在遍历时经过的边(即从已访问的顶点到达未访问顶点的边)构成的子图。