实验八 图的最小生成树

实验八 图的最小生成树

ID:47137604

大小:60.97 KB

页数:6页

时间:2019-08-11

实验八  图的最小生成树_第1页
实验八  图的最小生成树_第2页
实验八  图的最小生成树_第3页
实验八  图的最小生成树_第4页
实验八  图的最小生成树_第5页
资源描述:

《实验八 图的最小生成树》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、浙江大学城市学院实验报告课程名称数据结构与算法实验项目名称实验八图的最小生成树实验成绩指导老师(签名)日期一.实验目的和要求1.掌握图的最小生成树的概念。2.掌握生成最小生成树的Prim算法(用邻接矩阵表示图)。二.实验内容1、编写用邻接矩阵表示无向带权图时图的基本操作的实现函数,主要包括:①初始化邻接矩阵表示的无向带权图voidInitMatrix(adjmatrixG);②建立邻接矩阵表示的无向带权图voidCreateMatrix(adjmatrixG,intn)(即通过输入图的每条边建立图的邻接矩阵);③输出邻接矩阵表示的无向带权图voi

2、dPrintMatrix(adjmatrixG,intn)(即输出图的每条边)。把邻接矩阵的结构定义以及这些基本操作实现函数存放在头文件Graph1.h中。2、编写生成最小生成树的Prim算法函数voidPrim(adjmatrixG,edgsetCT,intn)以及输出边集数组的函数voidPrintEdge(edgesetCT,intn)。3、编写测试程序(即主函数),通过调用上述函数首先建立并输出无向带权图,然后生成最小生成树并输出(即输出边集)。要求:把边集数组的结构定义、Prim算法函数、输出边集数组的函数PrintEdge以及主函数存

3、放在文件test8.cpp中。测试数据如下:012354581231076296154、填写实验报告,实验报告文件取名为report8.doc。65、上传实验报告文件report8.doc与源程序文件test8.cpp及Graph1.h到Ftp服务器上自己的文件夹下。三.函数的功能说明及算法思路函数:voidInitMatrix(adjmatrixGA)功能:初始化邻接矩阵表示的无向带权图函数:voidCreateMatrix(adjmatrixGA,intn)功能:建立邻接矩阵表示的无向带权图函数:voidPrintMatrix(adjmatr

4、ixGA,intn)功能:输出邻接矩阵表示的无向带权图函数:voidPrim(adjmatrixGA,edgesetCT,intn)功能:生成最小生成树思路:设从连通带权图G={V,E}中的某一顶点u0出发;选择与它关联的具有最小权值的边,将其顶点加入到生成树的顶点集合U中;以后每一步从一个顶点在U中,而另一个顶点在V-U中的各条边中选择权值最小的边,把该顶点加入到集合U中;如此继续下去,直到图中的所有顶点都加入到生成树顶点集合U中为止。函数:voidPrintEdge(edgesetCT,intn)功能:输出边集数组四.实

5、验结果与分析6五.心得体会【附录----源程序】test8.cpp#include#include#include#include"Graph1.h"voidmain(){adjmatrixGA;edgesetCT;intn;InitMatrix(GA);cout<<"输入图的顶点数目:"<>n;cout<<"输入图的边:"<

6、A,n);Prim(GA,CT,n);cout<<"用Prim算法生成最小生成树"<

7、ndvex;WeightTypeweight;}edge;typedefedgeedgeset[MaxEdgeNum];//初始化邻接矩阵表示的无向带权图voidInitMatrix(adjmatrixGA){inti,j;for(i=0;i

8、,j;WeightTypew;cin>>c1;do{cin>>c1>>i>>c2>>j>>c3>>w;GA[i][j]=GA[j][i]

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。