包含完整的课程设计/大作业文档一份+C语言实现的源码+存储数据文件 分别使用了普里姆算法与克鲁斯卡尔算法进行最短路径求解。 内容:求城市之间的光纤网连接的最短电缆长度。 课程设计要求: (1) 从文件city.txt中读入一个图,文件city.txt结构如下: 第一行为整数m,n,其中m表示城市个数(顶点数),n表示边数; 接着的m行每行都是一个字符串,表示城市名; 接下来的n行每行代表一条边,其格式为“城市名城市名距离”。 (2) 要求在所有城市之间建立光纤网,使所用光纤总长度最短。 (3) 输出城市建成的光纤网所用光缆的总长及每个连接的长度。
若要在n个城市之间建设通信网络,只需要架设n-1条线路即可。如何以最低的经济代价建设这个通信网,是一个网的最小生成树问题。 (1)建立一个图,其存储方式可以采用邻接矩阵形式,需要定义两个数组,一个存储顶点,一个存储边,存储边的数组表明节点间的连通关系和边的权值; (2)利用普里姆算法和克鲁斯卡尔算法求网的最小生成树; (3)按顺序输出生成树中各条边以及它们的权值。
1