精选优质文档- 倾情为你奉上 专心-专注-专业 实验题目: 图的应用 实验目的: (1)熟练掌握图的基本存储方法; (2 )熟练掌握图的深度优先和广度优先搜索方法; (3 )掌握AOV 网和拓扑排序算法; (4 )掌握AOE 网和关键路径 。 实验内容: 拓扑排序。 任意给定一个有向图,设计一个算法,对它进行拓扑排序。拓扑排序算法思想:a.在 有向图中任选一个没有前趋的顶点输出;b.从图中删除该顶点和所有以它为尾的弧; c.重复上述a、b,直到全部顶点都已输出,此时,顶点输出序列即为一个拓朴有序 序列;或者直到图中没有无前趋的顶点为止,此情形表明有向图中存在环。 设计分析: 为实现对无权值有向图进行拓扑排序,输出拓扑序列,先考虑如何存储这个有向图。 拓扑排序的过程中要求找到入度为0 的顶点,所以要采用邻接表来存储有向图,而要得到 邻接表,则先要定义有向图的邻接矩阵结构,再把邻接矩阵转化成邻接表。 在具体实现拓扑排序的函数中,根据规则,当某个顶点的入度为0(没有前驱顶点) 时,就将此顶点输出,同时将该顶点的所有后继顶点的入度减1,为了避免重复检测入度 为0 的顶点,设立一个栈St,以存放