1、 课 程 设 计 报 告 课程名称课程名称 数据结构数据结构 课题名称课题名称 1.迷宫求解迷宫求解 2.一元多项式计算一元多项式计算 专专 业业 计算机科学与技术计算机科学与技术 班班 级级 计算机计算机 1001 学学 号号 20100301012 姓姓 名名 指导教师指导教师 2012 年年 7 月月 5 日日 课 程 设 计 任 务 书 课程名称 数据结构 课 题 1.迷宫求解 2.一元多项式计算 课 程 设 计 任 务 书 一设计内容 问题问题 1 1:拓扑排序:拓扑排序 大学期间各专业都要制订相应的教学计划。每个专业开设的课程预先已确定。 而各门课程间有的是相互独立的,而有的则有先
2、修后修的限定。试设计相应的课程 设置程序,实现对某专业各学期的课程的排布,其中每门课需设定课时,而各学期 的总课时不能超过上限。 测试数据:学期课时上限数:350 ;各课程所需学时:48;课程先、后修关系 如图: 问题问题 2 2:huffmanhuffman 编码编码 对于确定的字符集的电文字符串编码,实现最高的通信效率。编程实现对于给 定的输入串及各字符的已知频度,输出其编码方式(各字符的二进制编码)及对应 的输出流。 测试数据: 字符 A B C D E F G H I J K L M 频度 186 64 13 22 32 103 21 15 47 57 1 2 32 字符 N O P
3、Q R S T U V W X Y Z 频度 20 57 63 15 1 48 51 80 23 8 18 1 16 1 9 4 2 12 10 11 3 6 5 7 8 问题问题 3 3:成绩管理:成绩管理 编制一应用软件实现对班级成绩管理。基本功能有学生信息的增删(转入或退 学) 、查找(从当前点向前或向后双向的) 、录入、统计(如总分,及格率等) 。建议 用双链表实现。 问题问题 4 4:成绩排序:成绩排序 对某次考试成绩排序,输入为多门课程成绩,可以任一课程成绩为关键字进行 检索。建议采用快速排序等算法效率高的算法。 问题问题 5 5:迷宫求解:迷宫求解 一个 M*N 的长方阵迷宫,0
4、 和 1 分别表示迷宫中的通路和墙壁,对任意设定的迷 宫,东、南、西、北四个方向是可能的行走方向,求出一条从入口到出口的路径(或 没有通路) 。 迷宫的测试数据如下:左上角(1,1)为入口,右下角(8,9)为出口。 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 1 1 0 1 0 1 1 1 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 1 1 1 1 0 0 1 1 1 0 0 0 1 0 1 1 1 0 0 0 0 0 0 问题问题 6 6:一元多项式计算:一元多项式计算 对于任意输入的多项式A=anxn+an-1xn
5、-1+a1x+a0和B=bmxm+bm-1xm-1+b1x+b0, 用链表存储后实现 A+B;A-B。 测试数据: a. )72111.3()1157()1.352( 91198118 xxxxxxxx ; b.; 3915 15223923 122.18.7( )8.74.56()2.14.46( xxxx xxxxxxxx c. )1()()1( 25435432 xxxxxxxxxx ; d. 0)()( 33 xxxx ; e. )(0)( 2332 xxxxxx ; 问题问题 7: 7: 通讯录管理通讯录管理 设计一个通讯录管理,包括通讯录链表的建立、通讯者的插入、通讯者的删除、 通
6、讯者的查询以及信息修改等。 要求有运行界面,从菜单中进入选项。 二设计要求 1 1选题选题 每位学生需完成两个课题, 其中一个必选, 另一个自选, 必选题次为, 学号/7+1。 2 2课程设计报告内容说明课程设计报告内容说明 1)1)需求分析需求分析 程序的功能;输入输出的要求。 2)2)概要设计概要设计 程序的模块构成以及模块之间的层次结构、各模块的调用关系;每个 模块的功能;课题涉及的数据结构和数据库结构;即要存储什么数据,这些数据是什么 样的结构,它们之间有什么关系等。 3)3)详细设计详细设计 采用 C 语言定义相关的数据类型;写出各模块的类 C 码算法;画出各 函数的调用关系图、主要函数的流程图。 4)4)调试分析以及设计体会调试分析以及设计体会 测试数据:准备典型的测试数