图的遍历拓扑排序最短路径算法案例.docx

图的遍历、拓扑排序、最短路径算法 图的遍历 定义 图遍历又称图的遍历,属于数据结构中的内容。指的是从图中的任一顶点出发,对图中的所有顶点访问一次且只访问一次。图的遍历操作和树的遍历操作功能相似。图的遍历是图的一种基本操作,图的许多其它操作都是建立在遍历操作的基础之上。 由于图结构本身的复杂性,所以图的遍历操作也较复杂,主要表现在以下四个方面: ① 在图结构中,没有一个“自然”的首结点,图中任意一个顶点都可作为第一个被访问的结点。 ② 在非连通图中,从一个顶点出发,只能够访问它所在的连通分量上的所有顶点,因此,还需考虑如何选取下一个出发点以访问图中其余的连通分量。 ③ 在图结构中,如果有回路存在,那么一个顶点被访问之后,有可能沿回路又回到该顶点。 ④ 在图结构中,一个顶点可以和其它多个顶点相连,当这样的顶点访问过后,存在如何选取下一个要访问的顶点的问题。 分类 图的遍历可分为四类: 遍历完所有的边而不能有重复,即所谓“一笔画问题”或“欧拉路径”; 遍历完所有的顶点而没有重复,即所谓“哈密尔顿问题”。 遍历完所有的边而可以有重复,即所谓“中国邮递员问题”; 遍历完所有的顶点而可以重复,即所谓“旅行推销员问题”。 对于第一和第三类问题已经得到了完满的解决,而第二和第四类问题则只得到了部分解决。 第一类问题就是研究所谓的欧拉图的性质,而第二类问题则是研究所谓的哈密尔顿图的性质。 图的遍

文档评论(0)

1亿VIP精品文档

相关文档