下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实习三求无向连通图的生成树1.需求分析问题描述:若要在n个城市之间建设通信网络,只需要架设 n-1条路线即可。如何 以最低的经济代价建设这个通信网,是一个网的最小生成树问题。基本要求:(1)利用克鲁斯卡尔算法求网的最小生成树,其中,以课本 8.7节中的等 价类表示构造生成树过程中的连通分量。(2)利用普里姆算法求网的最小生成树。(3)以文本文件形式输出生成树中各条边以及他们的权值。2.设计(1)设计思想:创建邻接矩阵存储结构。本程序主要分为两个模块:创建邻 接矩阵模块,最小生成树模块。创建邻接矩阵模块:以邻接矩阵的存储形式创建 无向网。最小生成树模块:生成最小生成树,输出其各条边及权值。(2)
2、概要设计:int型LocateVex函数判断权值在矩阵的位置;声明CraeteGraph 函数创建邻接矩阵;声明kruskal函数用于生成最小生成树;声明main函数为程 序调用步骤。(3)设计详细:a.将程序分为两个模块:B.主函数流程图:c.最小生成树流程图(4)调试分析:(5)用户手册:-变量没定义就使用-子函数嵌套定义;-使用数组是越界; a.主页面:解决:定义完变量在使用。解决:子函数单独定义,可调用。解决:注意数组的值,注意不能越界(用空格隔开)网和 I 设顶 人 迎输 次全月b.输入顶点数及边数的信息:阿迎建逡通信网请输入演第额和边数;(用空格隔开)3 3C.输入顶点信息:欢迎建
3、设通信网请输入熊殿和辿数;(用空格隔开):扁人?个顶点的信心(用空格隔开)12 3d.输入顶点及权值:欢迎建设通信网手输入顶售薮和边数:(用空格隔开) 褊个顶点的信息,,用空格隔开) 福输I,条边的两个顶点及权值;(用空格隔开)12 113 3(6)测试结果:输出最小生成树及权值:欢迎建设遹值网请输入顶苫数和边数:(用空格隔开)褐I入3个顶点的信息一 (用空格隔开)Lil13条边的两个顶点及权值;(用空格隔开) 12 113 3朗是成树的各条边及权值为;1-2-117-3源程序:#include<stdio.h>#include<stdlib.h>#include<
4、;string.h>#define MAX 100#define MAX_VERTEXNUM 20typedef char VertexMAX;/ 顶点字符串typedef int AdjmatrixMAX_VERTEXNUMMAX_VERTEXNUM; 令口接矩阵typedef struct/淀义图Vertex vexsMAX_VERTEXNUM;Adjmatrix arcs;int vexnum,arcnum;MGraph;int LocateVex(MGraph* G,Vertex u)/判断权值在矩阵的位置 int i;for(i=0;i<G->vexnum;+i)i
5、f(strcmp(G->vexsi,u)=0) return i;return -1;void CreateGraph(MGraph *G)创建邻接矩阵int i,j,k,w;Vertex va,vb;printf("请输入顶点数和边数:(用空格隔开)n");scanf("%d%d",&G->vexnum,&G->arcnum);printf("请输入%d个顶点的信息:(用空格隔开)n",G->vexnum);for(i=0;i<G->vexnum;+i)scanf("%s
6、”,G->vexsi);for(i=0;i<G->vexnum;+i)for(j=0;j<G->vexnum;+j)G->arcsij=MAX;printf("请输入%d条边的两个顶点及权值:(用空格隔开)n",G->vexnum); for(k=0;k<G->arcnum;+k)scanf("%s%s%d*c”,va,vb,&w);i=LocateVex(Gva);j=LocateVex(Gvb);G->arcsij=G->arcsji=w;void kruskal(MGraph G)/最
7、小生成树int setMAX_VERTEXNUM,i,j;int k=0,a=0,b=0,min=G.arcsab;for(i=0;i<G .vexnum;+i)seti=i;printf("最小生成树的各条边及权值为:n");while(k<G.vexnum-1) for(i=0;i<G .vexnum;+i)for(j=0;j<G .vexnum;+j)if(G.arcsij<min) min=G.arcsij;a=i;b=j;if(seta!=setb)printf("%s-%s-%dn",G.vexsa,Gvexsb,G.arcsab); k+;for(i=0;G .vexnum;i+)if(seti=setb)set
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年国投航空科技(北京)有限公司招聘备考题库完整答案详解
- 2026年国家空间科学中心质量管理处招聘备考题库含答案详解
- 2026年天津市医源卫生人才服务有限责任公司公开招聘工作人员的备考题库及一套参考答案详解
- 2026年天津市医源卫生人才服务有限责任公司公开招聘工作人员的备考题库及1套完整答案详解
- 2026年中建新科建设发展有限公司招聘备考题库完整答案详解
- 2026年北京协和医院神经科合同制科研助理招聘备考题库及答案详解一套
- 2026年天津市静海区所属部分国有企业面向社会公开招聘工作人员备考题库及参考答案详解一套
- 2026年1112月山东圣翰财贸职业学院韩语教师招聘备考题库及答案详解一套
- 2026年上海对外经贸大学招聘工作人员备考题库参考答案详解
- 2026年哈尔滨电机厂有限责任公司招聘备考题库及1套参考答案详解
- 中小企业年度财务审计报告范本
- 2025年及未来5年中国可编程控制器行业市场深度分析及投资战略咨询报告
- 2025中国储备粮管理集团有限公司招聘笔试试题及答案
- 专业建设经验分享与总结报告
- 雅思阅读课件模板
- 中央电大(国家开放大学)药学本科《药理学》期末考试试题(含答案)
- 检测进度计划及保障措施
- (2025年标准)年会编排协议书
- 太阳能太阳能光伏发电
- 四川省土地开发项目预算定额标准
- 执业药师考勤管理制度表
评论
0/150
提交评论