- 1、本文档共55页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构课程设计报告
题目: 最小生成树问题
院(系): 计算机工程学院
学生姓名: XXX
班级: XXX 学号: XXXXXXXXX
起迄日期: 2015.07.13-2015.07.24
指导教师: XXX XXX
任务书
最小生成树问题
在n个城市之间建设网络,只需保证连通即可,求最经济的架设方法。
存储结构采用多种
要求分别采用普里姆算法和克鲁斯卡尔算法实现;
若以图形界面输出可以适当加分。?
需求分析
1.问题描述:
该程序主要实现最小生成树功能,在给定的中国铁路网中,选择城市,生成最小生成树。此外,改程序实现了城市介绍,指定城市到其它城市的最短距离,指定城市之间的最短距离等图论的基本操作。直观、清晰的为用户提供全国铁路网的最基本情况。
该程序最具体的任务是最小生成树的实现,需要用到Prim算法和Kruskal算法实现。输入指定的城市求出最小生成树,方便查询城市间的最短连通量。另外添加了显示全国主要铁路网的功能,在跳出的界面,选择城市,程序会通过textBox控件显示选定的城市的相关介绍。该程序实现了指定城市到其它城市之间的最短距离。通过在地图上选择城市,程序通过Dijkstra算法计算出指定城市到其它城市之间的最短距离,并通过textBox控件显示,一目了然。具有较强的人机和谐性。还可以实现指定城市之间的最短路,输入两个指定的城市,通过Floyd算法求出选定城市间的最短距离。并在图形界面上标注要经过的城市。
2.基本功能:
通过输入建立一无向网,存储结构采用了邻接矩阵。
要求分别采用Prim算法和Kruskal算法实现,分别对应Prim.cs和Kruskal.cs。
若以图形界面输出会适当加分。
3.附加功能:
(1)城市的介绍,在输出的全国铁路网中,点击相应的城市会出现对该城市相应的介绍。主要实现代码在Map.cs中。
(2)指定城市到其它城市的最短距离,在地图上点击指定城市,程序会显示指定城市到其它城市的最短距离。主要实现代码在Dijkstra.cs中
(3)指定的两个城市之间的最短距离。在地图中选择两个城市,程序会显示这两个城市之间的最短距离,并在地图上显示在这两个城市之间经过的城市。主要实现代码在LeastRoad.cs中。
概要设计
1.设计思路:
首先,将城市和道路的主要信息,包括城市和道路的数量、城市的名称、道路的相关信息存入文件中。在每个程序模块中通过字节流StreamReader从文件中读取字符,放入程序定义的存储结构中。
城市介绍。地图所含城市的主要介绍和城市名存入文本文件c5.txt中,在Map.cs中定义选定城市的关键字T,读取文件中的内容,寻找关键字T相对应的城市名,并在textBox1中输出该城市的相关内容。
指定城市到其它城市的最短路。从文件c1.txt、c2.txt、c3.txt中分别读取城市即道路的数量、城市名称、道路的相关信息。存于指定的变量中。采用Dijkstra算法求出指定城市到其它城市的最短路,存入指定变量中。Dijkstra算法用于求某个顶点到其余各顶点的最短路径。
指定城市之间的最短路。从文件c1.txt、c2.txt、c3.txt中分别读取城市即道路的数量、城市名称、道路的相关信息。存于指定的变量中。在给定的图中选择两个城市,存入相应的变量中。采用Floyd算法求出指定城市之间的最短路径。Floyd算法用于求每一对顶点之间的最短路径。
最小生成树(Prim)。从文件c1.txt、c2.txt、c3.txt中分别读取城市即道路的数量、城市名称、道路的相关信息,存于指定的变量中。在给定的图中选择城市,存入相应的变量中。采用Prim算法求出最小生成树。Prim算法通过寻找最小的距离,生成最小生成树。
最小生成树(Kruskal)。从文件c1.txt、c2.txt、c3.txt中分别读取城市即道路的数量、城市名称、道路的相关信息,存于指定的变量中。在给定的图中选择城市,存入相应的变量中。采用Kruskal算法求出最小生成树。Kruskal算法通过寻找最小的边的操作,生成最小生成树。
2.数据结构设计:
逻辑结构:图状
该程序主要实现最小生成树、指定顶点间的最短距离。题目的设计要求决定,图的存储结构是最理想的选择。其次,采用图状结构,更加适用于本程序,更形象化。便于整个程序代码的编写。为之后的功能设计提供方便。
存储结构:顺序。
链式存储结构,具有操作灵活、简便等特点。由于程序采用C#语言设计。在C#中没有指针这一类型。虽然可以通过类的定义实现链式存储,但操作过于麻烦,容易造
您可能关注的文档
- 毕业论文_中日美职业能力培训与认证比较研究报告论文.doc
- 毕业论文_中维网络监控系统设计方案.doc
- 毕业论文_中小企业财务风险分析与对策研究.doc
- 毕业论文_中小企业信用担保体系研究.doc
- 毕业论文_中小企业应收账款管理的问题论文.doc
- 毕业论文_中小企业应收账款管理的问题论文 精品.doc
- 毕业论文_中型旅游客车底盘总布置的初步设计方案.doc
- 毕业论文_中学教师优秀论文集.doc
- 毕业论文_中央储备粮大庆直属库新建罩棚仓初步设计方案.doc
- 毕业论文_重点污染源企业智能视频监控分析系统建设方案.doc
- 2023年江苏省镇江市润州区中考生物二模试卷+答案解析.pdf
- 2023年江苏省徐州市邳州市运河中学中考生物二模试卷+答案解析.pdf
- 2023年江苏省苏州市吴中区中考冲刺数学模拟预测卷+答案解析.pdf
- 2023年江苏省南通市崇川区田家炳中学中考数学四模试卷+答案解析.pdf
- 2023年江西省吉安市中考物理模拟试卷(一)+答案解析.pdf
- 2023年江苏省泰州市海陵区九年级(下)中考三模数学试卷+答案解析.pdf
- 2023年江苏省苏州市高新二中中考数学二模试卷+答案解析.pdf
- 2023年江苏省南通市九年级数学中考复习模拟卷+答案解析.pdf
- 2023年江苏省南通市海安市九年级数学模拟卷+答案解析.pdf
- 2023年江苏省泰州市靖江外国语学校中考数学一调试卷+答案解析.pdf
文档评论(0)