算法程序设计实验报告

算法程序设计实验报告

ID:47535960

大小:522.21 KB

页数:35页

时间:2020-01-13

算法程序设计实验报告_第1页
算法程序设计实验报告_第2页
算法程序设计实验报告_第3页
算法程序设计实验报告_第4页
算法程序设计实验报告_第5页
资源描述:

《算法程序设计实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、《程序设计》课程设计姓名:王学号:20100034班级:软件工程00班-35-指导教师:王会青成绩:2010年6月实验一.构造可以使n个城市连接的最小生成树专业:__软件工程___班级:__软件姓名:_王___学号:_20100034完成日期:_2010/6/26________一、【问题描述】给定一个地区的n个城市间的距离网,用Prim算法或Kruskal算法建立最小生成树,并计算得到的最小生成树的代价。1城市间的道路网采用邻接矩阵表示,邻接矩阵的存储结构定义采用课本中给出的定义,若两个城市之间不存在道路,则将相应边的权值

2、设为自己定义的无穷大值。2显示出城市间道路网的邻接矩阵。3最小生成树中包括的边及其权值,并显示得到的最小生成树的总代价。4输入城市数、道路数→输入城市名→输入道路信息→执行Kruskal算法→执行Prim算法→输出最小生成树-35-二、【问题分析】1.抽象数据类型结构体数组的定义:#ifndefADJACENCYMATRIXED//防止该头文件被重复引用#defineADJACENCYMATRIXED//而引起的数据重复定义#defineINFINITY32767//最大值∞#defineMAX_VERTEX_NUM20//

3、最大顶点个数typedefintVRType;//权值,即边的值typedefcharInfoType;//附加信息的类型,后面使用时会定义成一个指针typedefcharVertexType[MAX_VERTEX_NUM];//顶点类型typedefenum{DG=1,DN,UDG,UDN}GraphKind;//{有向图,有向网,无向图,无向网}typedefstructArcCell{VRTypeadj;//VRType是顶点关系类型。对无权图,用1或0表示相邻否;对带权图,则为权值类型。InfoType*info;/

4、/该弧关系信息的指针}ArcCell,AdjMatrix[MAX_VERTEX_NUM][MAX_VERTEX_NUM];typedefstruct{VertexTypevexs[MAX_VERTEX_NUM];//顶点向量AdjMatrixarcs;//邻接矩阵intvexnum,arcnum;//图的当前顶点数和弧数GraphKindkind;//图的种类标志-35-}MGraph;typedefstruct//普里姆算法辅助数组的定义{VertexTypeadjvex;VRTypelowcost;}closedge[M

5、AX_VERTEX_NUM];#endif//结束if2程序模块MGraphG;//网G,唯一的全局变量intmain(intargc,char*argv[]);//主函数StatusLocateVex(MGraphG,VertexTypev);//判断城市v在网G中的位置StatusCreateUDN(MGraph&G);//创建网G的邻接矩阵voidDisplayNet(MGraphG);//以邻接矩阵的形式显示网GvoidMiniSpanTree_KRUSKAL(MGraphG);//最小生成树的Kruskal算法vo

6、idMiniSpanTree_PRIM(MGraphG,VertexTypeu);//最小生成树的Prim算法StatusMinimum(closedgecloseEdge,intn);//Prim算法中求下一个城市的函数voidDeleteInfo(MGraph&G);//释放堆内存上动态申请的空间3.流程图创建用邻接矩阵表示的城市道路网输入城市数G.vexnum、道路数G.arcnum输入城市名G.vexs[i]-35-输入表示道路的两个城市及道路值G.arcs[i][j].adj返回OKPrim算法化辅助数组close

7、Edgefor(i=1;i

8、2个模块构造:***************LocateVex(MGraphG,VertexTypev)****************StatusLocateVex(MGraphG,VertexTypev);{while(strcmp(G.vexs[i],v)){i++;}返回i;}**

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

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

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