C++单项选择题标准化考试系统课程设计报告.doc

C++单项选择题标准化考试系统课程设计报告.doc

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
学 号 数据结构课程设计 设计说明书 医院选址问题 起止日期: 2013年 12月 23 日 至 2013 年 12月27日 学生姓名 路江飞 班级 11卓越七班 成绩 指导教师(签字) 计算机与信息工程学院 2013年12 月 27 日 天津城建大学 课程设计任务书 2013—2014学年第1学期 计算机与信息工程 学院 11卓越 专业 11卓越 7 班级 课程设计名称: 数据结构课程设计 设计题目: 医院选址问题 完成期限:自 2013 年 12 月 23日至 2013年 12 月 27 日共 1 周 设计依据、要求及主要内容(可另加附页): 一、设计目的 熟悉各种数据结构和运算,会使用数据结构的基本操作解决一些实际问题。 二、设计要求 在本课程设计过程中要求学生: (1)重视课程设计环节,用严谨、科学和踏实的工作态度对待课程设计的每一项任务; (2)按照课程设计的题目要求,独立地完成各项任务,严禁抄袭;凡发现抄袭,抄袭者与被抄袭者皆以零分计入本课程设计成绩。凡发现实验报告或源程序雷同,涉及的全部人员皆以零分计入本课程设计成绩。 (3)学生在接受设计任务后,首先要按设计任务书的要求编写设计进程表。 (4)认真编写课程设计报告。 三、设计内容 1)问题描述 n个村庄之间的交通图可以用有向网图来表示,图中边vi, vj上的权值表示从村庄i到村庄j的道路长度。现在要从这n个村庄中选择一个村庄新建一所医院,问这所医院应建在哪个村庄,才能使所有的村庄离医院都比较近? 2) 基本要求 (1) 建立模型,设计存储结构; (2) 设计算法完成问题求解; (3) 分析算法的时间复杂度。 3) 设计思想 医院选址问题实际是求有向图中心点的问题。首先定义顶点的偏心度。 设图G=(V,E),对任一顶点k,称E(k)=max{d(i, k)}(i∈V)为顶点k的偏心度。显然,偏心度最小的顶点即为图G的中心点。 如图7(a)所示是一个带权有向图,其各顶点的偏心度如图(b)所示。 医院选址问题的算法用伪代码描述如下: 1.对加权有向图,调用Floyd算法,求每对顶点间最短路径长度的矩阵; 2.对最短路径长度矩阵的每列求大值,即得到各顶点的偏心度; 3.具有最小偏心度的顶点即为所求。 四、参考文献 1、王红梅,数据结构,清华大学出版社 2、王红梅,数据结构学习辅导与实验指导,清华大学出版社 3、严蔚敏、吴伟民,《数据结构C语言版》,清华大学出版社(配题集) 目录 1、设计目的 1 2、总体设计 1 3、详细设计 1 3.1、程序具体功能: 1 3.2、调试分析: 4 4、源程序和运行结果 4 4.1、源程序 4 4.2、运行结果 9 5、心得体会 9 6、参考文献 10 医院选址问题 1、设计目的 熟悉各种数据结构和运算,会使用数据结构的基本操作解决一些实际问题。 2、总体设计 3、详细设计 3.1、程序具体功能: 1.输入函数 从键盘输入村庄的个数、道路的个数、以及各个村庄之间的距离,采用邻接矩阵存储,带有相应的异常处理。 核心代码: void input() { bool flag=true; while(flag) { cout请输入村庄的个数:; if(cincountry_number)//异常检测 break; else { cout输入有误!endl; cin.sync(); //清空流 cin.clear(); //清除流错误标记 continue; } } while(flag) { cout请输入道路的条数:; if(cinroad_numberroad_number0road_number= country_number*(coun try_number-1)) break; else { cout输入有误!endl; cin.sync(); //清空流 cin.clear(); //清除流错误标记 continue; } } for(int i=1;i=country_number;i++) { cout请输入第i个村庄的名字:; cincountry_name[i]; } } 2.求最短路径 对加权有向图,调用Floyd算法,求每对顶点间最短路径长度的矩阵。 核心代码: void MGraphDataTy

文档评论(0)

xingyuxiaxiang + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档