一、实验目的
(1) 掌握图的最小生成树的两种构造方法:普里姆(Prim)算法和克鲁斯卡尔(Kruskal)算法;
(2) 掌握求解单源点最短路径的迪杰斯特拉(Dijkstra)算法;
(3) 掌握拓扑排序的方法;
(4) 理解上述算法的程序实现。
二、实验环境
Windows 7以上版本的操作系统,Visual Studio 2010以上编程环境。
三、实验内容和步骤
- 请分别用普里姆(Prim)算法和克鲁斯卡尔(Kruskal)算法画出如下无向带权图的最小生成树的构造过程:(其中普里姆算法初始时选定A点)
Prim算法最小生成树的构造过程:初始时选定A点
Kruskal算法最小生成树的构造过程:
- 请使用迪杰斯特拉(Dijkstra)算法求出如下带权有向图中顶点A到其余各顶点的最短路径及其长度。
A到其余各顶点的最短路径及其长度:
- 请列出如下有向图的全部可能的拓扑有序序列:
拓扑有序序列:
ABCDEF
ABCEDF
ABDCEF
BACEDF
BACDEF
BADCEF
BDACEF
程序阅读:
课件目录提供了相关算法的程序实现,请阅读并理解程序的实现。