ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:34.37KB ,
资源ID:6002321      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6002321.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据结构课程实验报告要求跟题目.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据结构课程实验报告要求跟题目.docx

1、数据结构课程实验报告要求跟题目数据结构 课程设计任务书课程设计名称中文:数据结构英文:Data Structures适用专业计算机科学与技术培养层次本科学期2周数1学分1总学时一周一、课程设计目的与要求数据结构是计算机专业的核心课程,是一门实践性很强的课程。为了学好这门课程,必须在掌握理论知识的同时,加强上机实践。针对数据结构的课程设计不仅可以加深对课程内容的理解,并且可以通过实践进一步掌握程序设计的技能与方法,学会数据的组织方法和现实世界问题在计算机内部的表示方法,并针对问题的应用背景分析,选择最佳的数据结构和算法。同时通过课程设计,要求学生在完成程序设计的同时能够写出比较规范的设计报告,初

2、步感受软件开发过程的项目管理方法和规范,为进一步学习打下基础。在本课程设计过程中要求学生:(1)重视课程设计环节,用严谨、科学和踏实的工作态度对待课程设计的每一项任务;(2)按照课程设计的题目要求,独立地完成各项任务,不允许相互抄袭;(3)认真编写课程设计报告。二、课程设计内容与要求(见附件)三、课程设计方式和教学安排1、每人至少选择一题完成,每道题每个班选择人数不能超过5人。2、独立思考,独立完成:课程设计中各任务的设计和调试要求独立完成,遇到问题可以讨论,但不可以拷贝,不允许雷同。3、在处理每个题目时,要求从分析题目的需求入手,按设计抽象数据类型、构思算法、通过类的设计实现抽象数据类型、编

3、制上机程序和上机调试等若干步骤完成题目,最终写出完整的分析报告。前期准备工作完备与否直接影响到后序上机调试工作的效率。在程序设计阶段应尽量利用已有的标准函数,加大代码的重用率。4、设计出的系统要有一个易于使用人机界面。具体时间安排(第19周的星期一至星期五)时间内容星期一选定题目(学号后3位mod 题目总数)+1=题目编号,例如:学号尾数为100,题目总数为13,则应选第10题完成 100 mod 13=9 ,9+1=10)明确题目要求、确定数据结构、算法描述,准备测试数据等星期二至星期四完成要求问题并测试、归档星期五演示回答教师提问文档及程序的整理并提交作品课程设计期间不迟到,不早退,有特殊

4、情况要事先请假,并经有关老师批准方能有效,无故缺席者作旷课处理。进入机房,应遵守机房规定的各项制度。四、考核内容和方式考核内容1、课程设计报告(打印稿)2、课程设计报告(电子版)3、源程序(运行无误,电子版)考核方式指导教师根据课程设计文档、系统演示和学习态度综合考评,并结合学生的动手能力,独立分析解决问题的能力和创新精神进行评分(成绩为优秀、良好、中等、合格、不合格)。 五、其他说明关于课程设计报告课程设计报告是对整个设计工作的陈述和总结,是课程设计最终的文字成果。一、报告内容要求数据结构课程设计报告的内容框架:第一部分:引言引言是报告正文的引子,引言在内容上应包括:为什么要进行课程设计?立

5、题的理论或实践依据是什么?拟创新点何在?理论与(或)实践意义是什么?第二部分:系统功能和原始数据(1)原始数据(2)系统功能第三部分:程序总体设计(1)数据结构(2)模块划分和层次结构(3)函数原型清单(4)程序总体框架(5)程序组织第四部分:功能模块函数设计和调试在报告中学生应对所设计的系统进行详细的功能分析,主要模块的算法描述,绘制出系统功能模块图,并具体给出相关的程序流程图(或盒图)。第五部分:程序清单列出整个系统开发的完整程序源代码,并在清单中给出程序中包含的函数等的文字说明。第六部分:课程设计总结对所选题目对应程序的运行情况做详细分析,总结本次设计所取得的经验和收获。如果程序未能全部

6、调试通过,则应分析其原因。第七部分:参考资料在设计和书写报告中所参考的资料列表。二、报告格式要求(一)报告输出顺序1、封皮;2、目录;3、课程设计内容(上述的七个部分)。(二)排版要求课程设计报告要求用A4纸输出,正文一级标题用黑体三号不加粗,二级标题用宋体四号加粗,三级标题及以下标题均采用黑体四号,正文采用宋体小四。行间距采用行距固定值18磅,段落首行缩进两个汉字,段前段后间距为0行距。课程设计报告字数不少于2000字(不包括程序清单和程序结果的部分)。成绩评定标准1、优:按要求完成题目,有完整的符合标准的文档,文档有条理、文笔通顺,格式正确,其中有总体设计思想的论述,有正确的流程图,程序完

7、全实现设计方案,设计方案先进,软件可靠性好。 答辩回答问题正确,对系统的演示流畅,源代码解释清晰。2、良:完成设计题目,有完整的符合标准的文档,文档有条理、文笔通顺,格式正确;有完全实现设计方案的软件,设计方案较先进。答辩回答问题较好,对系统的演示较流畅,源代码解释较清晰。3、中:基本完成题目,有完整的符合标准的文档,有基本实现设计方案的软件,设计方案正确。答辩回答问题基本正确,对系统的演示基本完成,源代码解释较清楚。4、及格:基本完成题目,有完整的符合标准的文档,有基本实现设计方案的软件,设计方案基本正确。答辩回答问题基本正确,系统演示能够完成。源代码解释基本清楚。 5、不及格:没有完成题目

8、的要求,没有完整的符合标准的文档,软件没有基本实现设计方案,设计方案不正确。答辩回答问题不正确,系统演示不能够完成,源代码解释不清楚。提交方式及要求每个人以自己的“学号姓名”形式建立文件夹,每个人的文档及源程序存放在自己的文件夹内。答辩时拷贝给指导教师检查、答辩。答辩结束后拷给学习委员,学习委员将全班的设计报告和程序收集齐后交给指导教师。任选教师(课程负责人)签名: 教研室主任签名: 学院审批:日期: 日期: 日期:课程设计内容与要求题目1:运动会分数统计问题描述: 参加运动会的n个学校编号为1-n。比赛分为m个男子项目和w个女子项目,项目编号为1-m和m+1m+w。由于各项目参加人数差别较大

9、,有些项目取前五名,得分顺序为7,5,3,2,1;还有些项目只取前三名,得分顺序为5,3,2。写一个统计程序产生各种成绩单和得分报表。基本要求:1产生各学校的成绩单,内容包括各校所取得的每项成绩的项目号,名次(成绩)、姓名和得分;2产生团体总分报表,内容包括校号、男子团体总分、女子团体总分和团体总分。实现提示:可以假设n=20,m=30,w=20,姓名长度步超过20个字符,每个项目结束时,将其编号、类型符(区分取前五名还是前三名)输入,并按名次顺序输入运动员姓名、校名(和成绩)。选作内容:允许用户指定某项目采取其他名次取法;可以考虑使用图形界面实现系统。 要求:存储结构利用链表题目2:迷宫求解

10、问题 【问题描述】以一个mn的长方阵表示迷宫,0和1分别表示迷宫中的通路和障碍。(1)以递归方式输出一条从入口至出口的通路。(2)使用栈方式输出一条从入口至出口的通路。(3)输出所有具有迷宫的路径【基本要求】编写一个求解迷宫的非递归程序。求得的通路以三元组(i,j,d)的形式输出,其中:(i,j)指示迷宫中的一个坐标,d表示走到下一坐标的方向。如:对于下列数据的迷宫,输出的一条通路为z(1,1,1),(1,2,2),(2,2,2),(3,2,3),(3,1,2),。【测试数据】 迷宫的测试数据如下:左上角(1,1)为入口,右下角(8,9)为出口。 1 2 3 4 5 6 7 800100010

11、0010001000001101011100100001000001000101011110011100010111000000 (2) 以方阵形式输出迷宫及其通路。题目3:二叉排序树操作的演示问题描述: 利用二叉排序树实现一个动态查找表基本要求:实现二叉排序树的查找、插入、删除实现提示:1)初始:二叉排序树为空树,操作界面给出查找、插入、删除三种操作供选择,每种操作均要提示输入关键字。每次插入或删除一个结点后,应更新二叉排序树的显示。2)二叉排序树的显示可以采用凹入表或采用图形界面画出树形 选作内容:合并两棵二叉排序树题目4:内部排序算法比较 各种内部排序算法的时间复杂度分析结果只给出了算法

12、执行时间的阶,或大概执行时间。试通过随机的数据比较各算法的关键字比较次数和关键字移动次数,以取得直观感受。基本要求:(1) 从以下常用的内部排序算法至少选取5种进行比较:直接插入排序;折半折入排序;希尔排序;起泡排序;快速排序;简单选择排序;堆排序;归并排序。(2) 待排序表的表长为20000;其中的数据要用伪随机数产生程序产生;至少要用5组不同的输入数据作比较;比较的指标为有关键字参加的比较次数和关键字移动次数(关键字交换计为3次移动)。(3)最后对结果作出简单分析,包括对各组数据得出结果波动大小的解释。实现提示:主要工作是设法在已知算法中的适当位置插入对关键字的比较次数和移动次数的计数操作

13、。程序还可以考虑几组数据的典型性,如,正序,逆序和不同程序的乱序。选作内容:1)增加折半插入排序、二路插入排序、归并排序、基数排序等。2)对不同的输入表长作试验,观察检查两个指标相对于表长的变化关系。还可以对稳定行作验证。题目5:哈夫曼编码和译码 利用哈夫曼编码进行信息通信可以大大提高信道利用率,缩短信息传输时间,降低传输成本。但是,这要求在发送端通过一个编码系统对待传数据预先编码,在接收端将传来的数据进行译码(复原)。对于双工信道(即可以双向传输信息的信道),每端都需要一个完整的编/译码系统。试为这样的信息收发站写一个哈夫曼编/译码系统。基本要求:一个完整的系统应具有以下功能:(1)初始化(

14、Initialization)。从终端读入字符集大小n,以及n个字符和n个权值,建立哈夫曼树,(选做:并将它存于文件hfmTree中)。并显示出每个字符的编码。(2)编码(Encoding)。利用已建好的哈夫曼树(选做:如不在内存,则从文件htmTree中读入),对输入的字符串文本(选做:对文件ToBeTran中的正文)进行编码,(选做:然后将结果存入文件CodeFile中。)并显示在屏幕上。(3)译码(Decoding)。利用已建好的哈夫曼树将输入的代码进行译码(选做:将文件CodeFile中的代码进行译码,结果存入文件TextFile中。),并显示在屏幕上。(4)打印哈夫曼树(Tree P

15、rinting)。将已在内存中的哈夫曼树以直观的方式显示在屏幕上。要求:利用文件存储输入和输出结果。题目6:建立N个城市的最小代价通讯网络要求:输入N个城市相互之间建立通讯的代价,并存储在文件中;构造一个通讯网络,使得N个城市能够连通并且代价最小。基本要求:设图的顶点数不超过30,边的权值小于100,可以用随机数函数产生。通过顶点数和边的输入,构造出的逻辑示意图;图需要采用两种存储结构,分别利用prim和kruskal算法实现最小生成树,以文本形式输入生成树中的各条边和权值。选作内容; 利用堆排序实现选择权值最小的边。题目7:关键路径算法的实现要求:输入一个表示工程活动关系的AOV网,输出其关

16、键路径,并给出完成该工程所需的最短时间。题目8:校园导游程序【问题描述】设计一个校园导游程序,为来访的客人提供各种信息查询服务。【基本要求】(1) 设计你所在学校的校园平面图,所含景点不少于10个。以图中顶点表示校内各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等相关信息。(2)为来访客人提供图中任意景点相关信息的查询。(3)为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。【测试数据】由读者根据实际情况指定。【实现提示】一般情况下,校园的道路是双向通行的,可设校园平面图是一个无向网。顶点和边均 含有相关信息。【进一步完成内容】(1) 求校园

17、图的关节点。(2) 提供图中任意景点问路查询,即求任意两个景点之间的所有路径。(3) 提供校园图中多个景点的最佳访问路线查询 , 即求途经这多个景点的最佳 ( 短 )路径。(4) 校园导游图的景点和道路的修改扩充功能。(5) 扩充道路信息 , 如道路类别 ( 车道、人行道等 ) 、沿途景色等级 , 以至可按客人所需分别查询人行路径或车行路径或观景路径等。(6) 扩充每个景点的邻接景点的方向等信息 , 使得路径查询结果能提供详尽的导向信息。(7) 实现校园导游图的仿真界面。题目9:哈希表 问题描述: 针对同班同学中的“人名”设计一个哈希表,使得平均查找长度不超过R,完成相应的建表和查表程序。wa

18、n通讯录,学生信息有姓名,学号,电话号码等。以学生姓名为关键字设计哈希表,并基本要求:姓名以汉语拼音形式,待填入哈希表的人名约30个,取平均查找长度的上限为2.哈希函数用除留余数法构造,用伪随机探测再散列法处理冲突。实现提示:如果书记函数自行构造,则应首先调整好随机函数,使其分布均匀。人名的长度均不超过19个字符。字符的取吗方法可以直接利用C语言中的toascii函数,并可对过长的人名先作折叠处理。选作内容:1) 设计几个不同的哈希函数,比较它们的地址冲突率(可以用更大的名字集合做测试)2) 研究这30个人名的特点,努力找一个哈希函数,使得对于不同的拼音名一定不发生地址冲突3) 在哈希函数确定

19、的前提下,尝试各种不同处理冲突的方法,考查平均查找长度的变化和造好的哈希表中关键字的聚簇性。题目10:一元稀疏多项式计算器【问题描述】 设计一个一元稀疏多项式简单计算器。【基本要求】一元稀疏多项式简单计算器的基本功能是:(1) 输入并建立多项式 ;(2) 输出多项式,输出形式为整数序列:n,cl,el,c2,e2,cn,en,其中n是多项式的项数,ci 和ei,分别是第 i 项的系数和指数,序列按指数降序排列;(3) 多项式a和b相加,建立多项式a +b;(4) 多项式a和b相减,建立多项式a -b 。(5) 计算多项式在x处的值。(6) 求多项式 a 的导函数。(7) 多项式a和b相乘,建立

20、乘积多项式ab 。(8) 多项式的输出形式为类数学表达式。例如 ,多项式 -3x8+6x318 的输出形式为,x15+(8)x714的输出形式为。注意,数值为1的非零次项的输出形式中略去系数1,如项1x8的输出形式为x8,项 1x3的输出形式为x3。(9) 计算器的仿真界面。【测试数据】(1)(2x+5x83.1x11) + (75x8+11x9)=(3.lx11+11x9+2x+7)(2)(6x-3x+4.4x21.2x9) (-6x-3+5.4x2x2+7.8x15)=(-7.8x15-1.2x9+12x-3-x)(3)(1 +x + x2+x3+x4+x5)+(-x3x4)=(1+x+x

21、2+x5) (4)(x+x3)+(-xx3)=0(5)(x+x100)+(x100 +x200)=(x+2x100+x200)(6)(x+x2+x3)+0=x+x2+x3(7) 互换上述测试数据中的前后两个多项式【实现提示】 用带表头结点的单链表存储多项式。题目11:停车场管理【问题描述】设停车场是一个可停放n辆汽车的狭长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端),若车场内己停满n辆汽车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时

22、,在它之后进入的车辆必须先退出车场为它让路,待该辆车开出大门外,其他车辆再按原次序进入车场,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。试为停车场编制按上述要求进行管理的模拟程序。【基本要求】以桟模拟停车场,以队列模拟车场外的便道,按照从终端读入的输入数据序列进行模拟管理。每一组输入数据包括三个数据项:汽车“到达“或“离去“信息、汽车牌照号码以及到达或离去的时刻。对每一组输入数据进行操作后的输出信息为:若是车辆到达,则输出汽车在停车场内或便道上的停车位置;若是车辆离去,则输出汽车在停车场内停留的时间和应交纳的费用(在便道上停留的时间不收费)。栈以顺序结构实现,队列以链表结

23、构实现。题目12. 航空客运订票系统【问题描述】航空客运订票的业务活动包括:查询航线、客票预订和办理退票等。试设计一个航空客运订票系统,以使上述业务可以借助计算机来完成。【基本要求】(1)每条航线所涉及的信息有:起点站名,终点站名、航班号、飞机号、飞行日期、乘员定额、余票量、已订票的客户名单(包括姓名、订票量及所订的座位号)以及等候替补的客户名单(包括姓名、所需票量);(2)系统能实现的操作和功能如下:(1)录入:可以录入航班情况,录入的航班数据可存于内存中,每天结束工作时内存中的数据可通过“保存录入航班数据”添加存入文件中;提示:使用合适的结构组织,使它方便按“起点站名”与“终点站名”被查找

24、。设一般航班记录数据文件中将保存近10000条记录。(2)加载:将文件中保存的航班数据至内存中。(2)清除:将日期超过当前日期的航班记录清除。(3)查询航线:根据旅客提出的“起点站名”与“终点站名”输出下列信息:航班号、飞机号、星期几飞行,最近一天航班的日期和余票额;(4)承办订票业务:根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若尚有余票,则为客户办理订票手续,输出座位号,并将订票结果保存文件中。若已满员或余票额少于订票额,则需重新询问客户要求。若需要,可登记排队候补,候补名单将保存于内存中,选择合适的数据结构以方便候补业务的处理;承办退票业务:根据客户提供的情况(日期、航班)

25、,为客户办理退票手续,然后查询该航班是否有人排队候补,首先询问排在第一的客户,若所退票额能满足他的要求,则为他办理订票手续,否则依次询问其他排队候补的客户。(5)保存航班信息至文件中。(6)保存订票名单。(7)保存候补名单。【测试数据】由读者自行指定。【进一步完成内容】当客户订票要求不能满足时,系统可向客户提供到达同一目的地的其他航线情况。题目13 电梯模拟 【问题描述】设计一个电梯模拟系统。这是一个离散的模拟程序,因为电梯系统是乘客和电梯等“活动体“构成的集合,虽然他们彼此交互作用,但他们的行为是基本独立的。在离散的模拟中,以模拟时钟决定每个活动体的动作发生的时刻和顺序,系统在某个模拟瞬间处

26、理有待完成的各种事情,然后把模拟时钟推进到某个动作预定要发生的下一个时刻。【基本要求】(1) 模拟某校五层教学楼的电梯系统。该楼有一个自动电梯,能在每层停留。五个楼层由下至上依次称为地下层、第层、第二层、第三层和第四层,其中第一层是大楼的迸出层,即是电梯的“本垒层“,电梯“空闲“时,将来到该层候命。 (2) 乘客可随机地进出于任何层。对每个人来说,他有一个能容忍的最长等待时间,一旦等候电梯时间过长,他将放弃。 (3) 模拟时钟从0开始,时间单位为0.1秒。人和电梯的各种动作均要耗费一定的时间单位(简记为t),比如:有人进出时,电梯每隔40t测试一次,若无人进出,则关门;关门和开门各需要20tg

27、每个人进出电梯均需要25h如果电梯在某层静止时间超过300t,则驶回1层候命。(4) 按时序显示系统状态的变化过程:发生的全部人和电梯的动作序列。【测试数据】 模拟时钟Time的初值为0,终值可在50010000范围内逐步增加。【实现提示】(1)楼层由下至上依次编号为0,1,2,3,4。每层有要求Up(上)和Down(下的两个按钮,对应10个变量CaliUp0.4和CallDOWEl0.4。电梯内5个目标层按钮对应变量Caucar0.4。有人按下某个按钮时,相应的变量就置为1,一旦要求满足后,电梯就把该变量清为0。(2)电梯处于三种状态之-zGoingUp(上行)、GoingDown(下行)和

28、Idle(停候)。如果电梯处于Idle状态且不在1层,则关门并驶回1层。在1层停候时,电梯是闭门候命。一旦收到往另一层的命令,就转入GoingUp或GoingDown状态,执行相应的操作。 (3)用变量Time表示模拟时钟,初值为0,时间单位。)为0。l秒。其他重要的变量有:Floor 电梯的当前位置(楼层);DI 值为0,除非人们正在进入和离开电梯;D2 值为0,如果电梯已经在某层停候30Ot以上;D3 值为0,除非电梯门正开着又无人迸出电梯;State 电梯的当前状态(GoingUp,GoingDOWEl,Idle)。系统初始时,Floor=1,Dl=D2=D3=0,State=Idle。

29、(4)每个人从进入系统到离开称为该人在系统中的存在周期。在此周期内,他有6种可能发生的动作:M1. 进入系统,为下一人的出现作准备产生以下数值:InFloor 该人进入哪层楼;011tFloor 他要去哪层楼;GiveupTime 他能容忍的等候时间;Inter-Time 下一人出现的时间间隔,据此系统预置下一人进入系统的时刻。M2. 按电钮并等候此时应对以下不同情况作不同的处理:Floor=InFloor且电梯的下一个活动是E6(电梯在本层,但正在关门;Floor=InFloor且D3手0(电梯在本层,正有人迸出);其他情况,可能D2=0或电梯处于活动El(在1层停候)。M3. 进入排队在等

30、候队列QueueInFloor末尾插入该人,并预置在GiveupTime个t之后,他若仍在队列中将实施动作M4。 M4. 放弃如果Floor手InFloor或Dl=0,则从QuemInFloor和系统删除该人。如果Floor=InFloor且D1学0,他就继续等候(他知道马上就可进入电梯。 M5. 进入电梯从QueueInFloor删除该人,并把他插入到lElevator(电梯)校中。置Cancar011tFloor为1。 M6. 离去从Elevator和系统删除该人。 (5)电梯的活动有9种:E1. 在1层停候若有人按下一个按钮,则调用Controler将电梯转入活动E3或E60。E2. 要改变状态?如果电梯处于GoingUp(或GoingDown状态,但该方向的楼层却无人等待,则要看反方向楼层是否有人等候,而决定置State为GoingDown(或GoingUp还是Idle。E3. 开门置DI和D2为非0值,预置300个t后启动活动E9和76个t后启动E5,然后预置20个t后转到目。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1