当前位置:文档之家› 课程设计要求

课程设计要求

数据结构课程设计任务书课程设计名称:数据结构课程设计课程设计编号:CSE03704课程设计学分:2课程设计周(时)数:2周课程设计授课单位:信息工程学院计算机系指导方式:集体辅导与个别辅导相结合课程设计适用专业:计算机科学与技术课程设计教材及主要参考资料:《数据结构课程设计》,滕国文编著,清华大学出版社,2010年;《数据结构课程设计》,陈越钦铭雁编著,浙江大学出版社,2009年《数据结构课程设计案例教程》, 马巧梅等编著, 人民邮电出版社,2012年一、课程设计教学目的及基本要求1.了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力;2.初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;3.提高综合运用所学的理论知识和方法独立分析和解决问题的能力;4.训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。

二、设计内容题目1:模拟停车场管理问题问题描述:设停车场只有一个可停放几辆汽车的狭长通道,且只有一个大门可供汽车进出。

汽车在停车场按车辆到来的先后顺序依次排列,若车场内已停满几辆汽车,则后来的汽车只能在门外的便道上等候,一旦停车场内有车开走,则排在便道上的第一辆车即可进入;当停车场内某辆车要离开时,由于停车场是狭长的通道,在它之后开入的车辆必须先退出车场为它让路,待该辆车开出大门后,为它让路的车辆再按原次序进入车场。

每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。

基本要求:试为停车场编制按上述要求进行管理的模拟程序。

在这里假设汽车不能从便道上开走。

试设计一个停车场管理程序。

实现提示:以栈模拟停车场,以队列模拟车场外的便道,按照从终端读入的输入数据序列进行模拟管理。

每一组输入数据包括三个数据项:汽车“到达”或“离去”信息、汽车牌照号码及到达或离去的时刻,例如:('A',1,5)表示一号牌照车在5这个时刻到达,而('D',5,20)表示5号牌照车在20这个时刻离去,整个程序可以在输入信息为('E',0,0)时结束。

对每一组输入数据进行操作后的输出数据为:若是车辆到达,则输出汽车在停车场内或便道上的停车位置;若是车离去;则输出汽车在停车场内停留的时间和应交纳的费用(在便道上停留的时间不收费)。

栈以顺序结构实现,队列以链表实现。

需另设一个栈,临时停放为给要离去的汽车让路而从停车场退出来的汽车,题目2:哈夫曼编码和译码问题描述:利用哈夫曼编码进行信息通信可以大大提高信道利用率,缩短信息传输时间,降低传输成本。

但是,这要求在发送端通过一个编码系统对待传数据预先编码,在接收端将传来的数据进行译码(复原)。

对于双工信道(即可以双向传输信息的信道),每端都需要一个完整的编/译码系统。

试为这样的信息收发站写一个哈夫曼编/译码系统。

基本要求:一个完整的系统应具有以下功能:(1)初始化及文本的频率统计。

从终端读入字符集大小n,以及n个字符和n个权值,完成文本的频率统计。

建立哈夫曼树,并将它存于文件中。

(2)编码。

利用已建好的哈夫曼树,从文件中读入,对正文进行编码。

然后将结果存入文件"CodeFile-姓名"中。

(3)译码。

利用已建好的哈夫曼树将输入的代码进行译码,将文件"CodeFile-姓名"中的代码进行译码,结果存入文件"Decoding-姓名"中。

(4)打印哈夫曼树。

将已在内存中的哈夫曼树以直观的方式显示在屏幕上。

题目3:交通咨询系统(最短路径问题)问题描述:设计一个交通咨询系统,能让旅客咨询从任一个城市顶点到另一个城市顶点之间的最短路径或最低费用或最少时间等问题。

对于不同咨询要求,可以输入城市间的路程或所需要时间或所需费用。

设计分三个部分,一是建立交通网络图的存储结构;二是解决单源最短路径问题;最后再实现两个城市顶点之间的最短路径问题。

基本要求:(1)对城市信息(城市名、城市间的里程)进行编辑:具备添加、修改、删除功能;(2)对城市间的两种交通工具(飞机航班和列车时刻表)进行编辑:里程、航班和列车班次的添加、修改、删除;(3)提供两种最优决策:最快到达或最省钱到达。

全程只考虑一种交通工具,可以不考虑回程;(4)旅途中的耗费的总时间应包括中转站的等候时间。

其中飞机至少二小时,火车至少一小时;(5)咨询以用户和计算机对话方式进行,要注意人机交互的屏幕界面。

由用户选择最优决策原则和交通工具,输入起始站、终点站、出发时间。

输出信息:最快需要多长时间才能到达及旅费,或者最少需要多少旅费才能到达及时间,并详细说明依次于何时何地乘坐哪一趟班机或列车何时到达何地。

实现提示:(1) 数据存储。

城市信息(城市名、代码)、交通信息(城市间的里程、各航班和列车时刻)存储于磁盘文件。

建议把城市信息存于文件前面,交通信息存于文件的后面,用fread 和fwrite函数操作。

(2) 数据的逻辑结构。

根据设计任务的描述,其城市之间的旅游交通问题是典型的图结构,可看作为有向图,图的顶点是城市,边是城市之间所耗费的时间(要包括中转站的等候时间)或旅费。

(3) 数据的存储结构。

采用邻接表和邻接矩阵都可作为数据的存储结构,但当邻接边不多时,宜采用邻接表,以提高空间的存储效率。

这里建议采用邻接表作为数据的存储结构。

(4) 用不同的功能模块对城市信息和交通信息进行编辑。

添加、修改、删除功能,可用菜单方式或命令提示方式。

只要能方便的对城市信息和交通信息进行管理即可,但要注意人机界面,具体实现由学生自行设计。

(5) 最优决策功能模块(fast or province)。

读入城市信息和交通信息,用邻接表生成含权网络,表头数组中的元素存放城市名及对方城市到达该元素所代表城市的所有信息;表头数组中的元素所对应的单链表存放与该元素所代表的城市有交通联系的城市(代码、里程、航班、列车车次)。

根据具体最优决策的要求,用Dijkstra算法求出出发城市到其它各城市的最优值(最短时间或最小的费用),搜索过程中所经过城市的局部最优信息都保存在邻接表的表头数组中。

其目的城市所代表的元素中就保存了所需的最优决策结果。

这过程中,要用队列或栈保存局部最优决策值(局部最短的时间或最省的费用)变小的城市,其相应的初始值可为∞,并在表头数组对应的城市元素中保存响应的信息。

开始时,栈(队)中只有出发地城市,随着对栈(队)顶(首)城市有交通联系的城市求得决策值(最短时间或最小的费用),若该值是局部最优值且该城市不在栈(队)中,则进栈(队),直至栈(队)为空。

输出结果。

从目的城市出发,搜索到出发城市,所经过的城市均入栈,再逐一出栈栈中的城市,输出保存在表头数组中对应城市的信息(对方城市的出发信息、里程、时间、费用等)及最终结果。

即输出依次于何时何地乘坐几点的飞机或火车于何时到达何地;最终所需的最快需要多长时间才能到达及旅费,或者最少需要多少旅费才能到达及时间。

(6) 主程序可以有系统界面、菜单;也可用命令提示方式;选择功能模块执行,要求在程序运行过程中可以反复操作。

测试数据:飞机最快到达咨询:北京到乌鲁木齐,北京11点出发;火车最快到达咨询:广州到哈尔滨,广州10点出发;飞机最省钱到达咨询:乌鲁木齐到南京,乌鲁木齐12点出发;题目4:图书管理基本业务模拟问题描述:图书管理一般包括图书采编、图书编目、图书查询及图书流通(借、还书)等基本业务。

要求设计一个图书管理信息系统,用计算机模拟实现上述系统功能。

基本要求:(1)书的登记内容包括书号、书名、著作者、现存量和库存量等;学生信息包括借书证号、借阅信息等;(2)以书号建立索引表(线性表)以提高查找效率;(3)主要功能如下:a)采编入库:新购一种书,确定书号后,登记到图书帐目表中,如果表中已有,则只将库存量增加;b)借阅:如果一种书的现存量大于0,则借出一本,登记借阅者的书号和归还期限,改变现存量;c)归还:注销对借阅者的登记,改变该书的现存量。

(4)输出形式:能按书号、书名、著作者查找库存的书籍信息能按学生的借书证号显示学生信息和借阅信息书籍入库借书功能实现还书功能实现题目5:自选题目问题描述:与本课程设计相关内容。

基本要求:(1) 每班自选题目数量为3个左右;(2) 小组成员的数据结构成绩平均80分左右,或有前期项目支撑;(3) 自选题目需要经过任课教师审批,获批后方可进行设计。

三、设计要求1、每组3-4人,每人负责完成一个部分;请大家做好选题并分组工作。

每个小组由一名组长和二名成员组成,名单由学习委员统计后以电子文档形式交给指导老师,最后成绩评定根据分组进行。

2、要求学生认真阅读设计任务书,了解所做的设计内容及要求,认真主动完成课设的要求。

有问题及时主动通过各种方式与教师联系沟通。

3、学生要发挥自主学习的能力,充分利用时间,安排好课设的时间计划,并在课设过程中不断检测自己的计划完成情况,及时向教师汇报。

4、查阅相关的参考文献;独立完成设计任务。

5、认真撰写课程设计报告,要求文字通顺、有逻辑性、真正反映设计的水平,设计要有创新。

6、设计完成后上交相关内容要求:①上交源程序:学生按照课程设计的具体要求所开发的所有源程序(应该放到一个文件夹中)。

②课程设计报告:格式及要求见附录。

四、时间安排1、课程设计时间为2周,每天8:30-11:30, 13:30-16:302、课设地点及具体进度计:921 实验室, 计G:915实验室3、答疑教师徐华、马莉、赵国庆、张世博4、课程设计期间不迟到,不早退,有特殊情况要事先向指导老师请假,并经有关老师批准方能有效,无故缺席者作旷课处理。

五、成绩评定1、由指导教师根据学生完成任务的情况、课程设计报告的质量和课程设计过程中的工作态度等综合打分。

成绩评定实行优秀、良好、中等、及格和不及格五个等级。

2、独立按时完成规定的工作任务,不得弄虚作假,不准抄袭他人内容,发现课程设计基本雷同者,一律不及格。

附录:课程设计报告,格式及要求如下:一、封面;二、目录;三、设计任务书;四、小组成员及分工五、报告正文,主要内容包括:1.设计题目;2.设计目的;3.算法思想分析;4.算法描述与实现,包括数据结构类型定义、主要算法的流程图及功能描述、程序代码等。

5. 程序运行结果;6.结论。

相关主题