正在加载图片...
课程代号课程名称 前导课程 C1 高等数学 无 c① C③ e 程序设计语言 无 c@ C3 数据结构 C2 5-14课程之间先后关系有向图 C4 编译原理 C2,C3 C5 操作系统 C3,C6 C6 计算机组成原理C7 C7 普通物理 0 课程之间的先后关系可用有向图表示,如图5-14所示。 对这个有向图进行拓扑排序可得到一个拓扑序列:C1,C2,C7,C6,C3,C4, C5。也可得到另一个拓扑序列C1,C7,C2,C3,C6,C4,C5。学生按照任何一个 拓扑序列都可以顺利地进行课程学习。 下面给出有向图拓扑排序算法的基本步骤: ①从图中选择一个入度为0的顶点,输出该顶点: ②从图中删除该顶点及其相关联的弧: ③重复执行①、②直到所有顶点均被输出,拓扑排序完成或者图中再也没有入 度为0的顶点(此种情况说明原有向图含有环)。 可以证明,任何一个无环有向图,其全部顶点都可以排成一个拓扑序列。而且 其拓扑序列不一定是唯一的。 下面以图5-15为例说明拓扑排序过程课程代号 课程名称 前导课程 C1 高等数学 无 C2 程序设计语言 无 C3 数据结构 C2 5-14 课程之间先后关系有向图 C4 编译原理 C2,C3 C5 操作系统 C3,C6 C6 计算机组成原理 C7 C7 普通物理 C1 课程之间的先后关系可用有向图表示,如图 5-14 所示。 对这个有向图进行拓扑排序可得到一个拓扑序列:C1,C2,C7,C6,C3,C4, C5。也可得到另一个拓扑序列 C1,C7,C2,C3,C6,C4,C5。学生按照任何一个 拓扑序列都可以顺利地进行课程学习。 下面给出有向图拓扑排序算法的基本步骤: ①从图中选择一个入度为 0 的顶点,输出该顶点; ②从图中删除该顶点及其相关联的弧; ③重复执行①、②直到所有顶点均被输出,拓扑排序完成或者图中再也没有入 度为 0 的顶点(此种情况说明原有向图含有环)。 可以证明,任何一个无环有向图,其全部顶点都可以排成一个拓扑序列。而且 其拓扑序列不一定是唯一的。 下面以图 5-15 为例说明拓扑排序过程
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有