电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

数据结构课程设计_地铁建设问题VIP免费

数据结构课程设计_地铁建设问题_第1页
数据结构课程设计_地铁建设问题_第2页
数据结构课程设计_地铁建设问题_第3页
软件学院课程设计报告书课程名称数据结构设计题目地铁建设问题专业班级学号姓名指导教师2014年1月17日目录1设计时间..........................................................................02设计目的..........................................................................03设计任务...........................................................................04设计内容..........................................................................04.1总体设计........................................................................04.2需求分析........................................................................14.3详细设计........................................................................24.4测试与分析.....................................................................44.4.1测试...........................................................................44.4.2分析...........................................................................54.5附录.............................................................................65总结与展望.....................................................................12参考文献............................................................................13成绩评定............................................................................141设计时间2014年1月15日2设计目的设计各辖区之间最短地铁,使修建费用最少3设计任务某城市要在各个辖区之间修建地铁,由于地铁建设费用昂贵,因此需要合理安排地铁建设线路,使市民可以沿地铁到达各个辖区,并使总费用最小。4设计内容(1)输入各个辖区名称和各辖区间直接距离(地铁铺设费用与距离成正比)。(2)根据辖区距离信息,计算出应该在哪些辖区建立地铁线路。(3)输出应该建设的地铁线路及所需建设总里程。4.1总体设计图4-1算法图4.2需求分析(1)本程序设计计算城市内各辖区间修建地铁的最短路程。(2)运行时,输入辖区的名称,各辖区之间用空格键隔开,以#输入结束。(3)输入各辖区间距离时,先输入两辖区名称,再输入距离。(4)最后计算最短距离来得出最少费用。4.3详细设计采用邻接矩阵存储构造无向图intcreatgraph(Graph*g){inti=0,j,m,k,p;chara[10],b[10];printf("请输入所有的辖区,以#为输入结束标志\n");scanf("%s",g->V[i]);while(strcmp("#",g->V[i])!=0){i++;scanf("%s",g->V[i]);}g->vexnum=i;for(i=0;ivexnum;i++)for(j=0;jvexnum;j++)g->R[i][j]=INFINITY;printf("请输入辖区和辖区之间的路程,以##为结束标志\n");scanf("%s%s%d",a,b,&m);while(strcmp("##",a)!=0||strcmp("##",b)!=0||m!=0){k=locatevex(g,a);p=locatevex(g,b);if(k==-1){printf("没有%s这个辖区\n",a);return0;}if(p==-1){printf("没有%s这个辖区\n",b);return0;}g->R[k][p]=g->R[p][k]=m;scanf("%s%s%d",a,b,&m);}return1;}普利姆算法生成最小树structtree//构造最小生成树//{intweizhi;intlowcost;};intminimun(structtree*a,Graphg){inti,k,m=0;for(i=0;i#include#include#include#defineINFINITY10000#defineM20typedefstruct{charV[M][10];intR[M][M];intvexnum;}Graph;intlocatevex(Graph*g,chara[10]){inti;for(i=0;ivexnum;i++){if(strcmp(a,g->V[i])==0)returni;}if(i==g->vexnum)return-1;}intcreatgraph(Graph*g){inti=0,j,m,k,p;ch...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

爱的疯狂+ 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

最新文章

确认删除?
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部