-------------------------------------资源来源于网络,仅供自学使用,如有侵权,联系我必删.

第一:

?  定义
   从图中的某一顶点出发 , 沿着一些边访遍图中所有的顶点 , 使得每个顶点仅被访问一次 。

? 分类
  深度优先搜索  DFS (Depth First Search)
  广度优先搜索  BFS (Breadth First Search)

 

第二:

深度优先遍历

第33节 图的遍历

关键 :
整个过程需要一个标记顶点是否被访问过的辅助数组visited[]

 

? 算法描述
    访问起始顶点v 
    •  当v   还有邻接顶点未访问时
         –  深度遍历未访问过的邻接顶点w  
    •  当v   的所有邻接顶点都被访问时
         –  若图中所有顶点均已访问
             »  算法结束
        –  若图中还有未访问的顶点
            »  以未访问顶点作为起始顶点深度遍历

 

第三:

广度优先遍历

第33节 图的遍历

关键 :
整个过程需要一个标记顶点是否被访问过的辅助数组visited[]

 

? 算法描述
. 1.  访问起始顶点v0
. 2.  依次访问v v 0 0 的各个邻接点v01 ,v02 , … ,v 0x
. 3.  假设最近一次访问的顶点依次为v i1 ,v i2  , … , v iy , 则依次访问v i1 ,v i2 , … , v iy 的未被访问的邻接点
. 4.  重复 3,直到所有顶点均被访问

广度优先遍历是一种层次遍历 , 需要借助队列实现

 

第四:

图遍历算法的实现

 

 

 

小结:

遍历是图结构的基础算法 , 也是其它图算法的基础.

相关文章:

猜你喜欢
  • 2021-06-24
  • 2022-12-23
  • 2021-12-25
  • 2022-03-01
  • 2021-08-04
  • 2021-06-12
  • 2021-08-31
相关资源
相似解决方案