```
有需要的可关注私信联系
《数据结构》课程设计 用c语言写的
[问题描述]
若要在n个城市之间建设通信网络,只需要假设n-1条线路即可。如何以最低的经济代价建设这个通信网,是一个网的最小生成树问题。
[基本要求]
- 利用克鲁斯卡尔算法求网的最小生成树。
- 利用普里姆算法求网的最小生成树。
- 要求输出各条边及它们的权值。
[测试数据]
由学生任意指定,但报告上要求写出多批数据测试结果。
[实现提示]
通信线路一旦建成,必然是双向的。因此,构造最小生成树的网一定是无向网。设图的顶点数不超过30个,并为简单起见,网中边的权值设成小于100的整数,可利用C语言提供的随机函数产生。
图的存储结构的选取应和所作操作相适应。为了便于选择权值最小的边,此题的存储结构既不选用邻接矩阵的数组表示法,也不选用邻接表,而是以存储边(带权)的数组表示图。
[进阶]
利用堆排序实现选择权值最小的边。
```