资源描述:
《数据结构课程设计指导书(计算机09)2010》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、课程设计指导书课程设计名称算法与数据结构课程设计沈阳建筑大学信息与控制工程学院2010年2月编写说明1、鼓励指导教师结合课程教学内容和学生所属专业特点,自行编写具有专业特色的《课程设计指导书》。《课程设计指导书》的具体格式见附表。2、允许指导教师选用校外公开出版的优秀《课程设计指导书》,但必须是所选用的《课程设计指导书》恰好能够符合我校教学大纲要求。3、如果选用的《课程设计指导书》中有部分引用,建议摘录后编入新的《课程设计指导书》。课程设计名称算法与数据结构课程设计课程设计编号060016704课程设计时间1周课程设计学分1适用
2、专业、年级计算机科学与技术09级课程设计目的《算法与数据结构》是计算机科学中一门综合性的专业基础课。主要介绍如何合理地组织数据、有效地存储和处理数据,正确地设计算法以及对算法的分析和评价。课程设计是一项综合性设计活动,要求在教师的指导下,利用本课程内的以及到目前为止所学到的有关知识和技术解决一些不太复杂但却是综合性的问题。从规模来说,课程设计是在平时作业的基础上进一步扩大的大作业。在设计中,要求学生要全面考虑相互联系的各个方面及问题。通过课程设计,使学生了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力;初步掌握软
3、件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;提高综合运用所学的理论知识和方法独立分析和解决问题的能力;训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风,从而使学生对整个课程的知识体系有较深入的理解,在运用本课程的知识解决实际问题方面得到锻炼,对锻炼学生的实践能力以及运用本课程的知识、方法解决更为复杂的实际问题有较好的启发和指导作用,从而为后续课程的学习、毕业设计环节以及将来的实际工作打好坚实的基础。通过对给定问题的求解,使学生在运用《算法与数据结构》、程序设计以及迄
4、今为止所学课程中的各种基本技术和理论,在建立问题模型、构造求解算法、设计数据结构、编程及上机调试等方面得到全面的锻炼,从而能更深刻地理解《算法与数据结构》的精髓,为后续软件课程的学习及软件设计能力的提高奠定良好的基础。一、课程设计题目(只写大题目或母题目,可不写“每人一题”的具体子题目)1.图书管理2.哈夫曼编/译码器3.哈希表设计4.内部排序算法比较5.迷宫问题6.校园导游咨询(6题选一题)二、课程设计内容(课程设计所应完成的主要环节或项目)1.图书管理:【问题描述】图书管理基本业务活动包括:对一本书的采编入库、清除库存、借阅
5、和归还等等。试设计一个图书管理系统,将上述业务活动借助于计算机系统完成。【基本要求】(l)每种书的登记内容至少包括书号、书名、著者、现存量和总库存量等五项。(2)作为演示系统,不必使用文件,全部数据可以都在内存存放。但是由于上述四项基本业务活动都是通过书号(即关键字)进行的,所以最好用B树(2一3阶B树)对书号建立索引,以获得高效率。(3)系统应实现的操作及其功能定义如下:采编入库:新购入一种书,经分类和确定书号之后登记到图书账目中去.如果这种书在账中已有,则只将总库存量增加。清除库存:某种书已无保留价值,将它从图书账目中注销。
6、借阅:如果一种书的现存量大于零,则借出一本,登记借阅者的图书证号和归还期限。归还:注销对借阅者的登记,改变该书的现存量。显示:这个操作是为了调试和维护的目的而设置的。【测试数据】入库书号:35,16,18,70,5,50,22,60,13,17,12,45,25,42,15,90,30,7然后清除:45,90,50,22,42其余数据自行设计。由空树开始,每插入删除一个关键字后就显示B树的状态。【实现提示】每种书的记录可以用动或静态链式结构;借阅登记可以链接在相应的那种书之后。【选作内容】增加人机对话日志增加列出某著作者全部著作
7、的操作预约借阅功能2.哈夫曼编/译码器【问题描述】利用哈夫曼编码进行通信可以大大提高信道利用率,缩短信息传输时间,降低传输成本。但是,这要求在发送端通过一个编码系统对待传数据预先编码,在接收端将传来的数据进行译码(复原)。对于双工信道(即可以双向传输信息的信道),每端都需要一个完整的编/译码系统。试为这样的信息收发站写一个哈夫曼码的编/译码系统。【基本要求】一个完整的系统应具有以下功能:(l)I:初始化(Initialization)。从终端读入字符集大小n,以及n个字符和n个权值,建立哈夫曼树,并将它存于文件hfmTree中。
8、(2)E:编码(Encoding)。利用已建好的哈夫曼树(如不在内存,则从文件hfmTree中读入),对文件ToBeTran中的正文进行编码,然后将结果存入文件CodeFile中。(3)D:译码(Decoding)。利用已建好的哈夫曼树将文件CodeFile中的