欢迎来到天天文库
浏览记录
ID:30184058
大小:118.04 KB
页数:7页
时间:2018-12-27
《[工学]10级数据结构课程设计题目及要求学生》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、10级数据结构课程设计题目及要求一、课程设计目的《数据结构》是计算机专业一门重要的专业技术基础课程,是一门关键性核心课程。《数据结构》课程的目标是使学生学会分析研究计算机加工对象的特性,选择合适的数据结构和存储表示,以及编制相应的实现算法,培养和提高学生程序设计的能力。《数据结构》课程也是一门实践性较强的课程,设置实践环节是十分重要的。本课程设计的目标就是要达到理论与实际应用相结合,提高学生组织数据及编写大型程序的能力,并培养基本的、良好的程序设计技能以及合作能力。二、课程设计内容题目一:仓库管理系统(线性表应用)[问题描述]建立一个仓库管理程序,可以按顺序和货物名称
2、查询仓库存储情况,也可以增加或删除货物以及建立新的仓库存储系统。[实现提示]可以采用双向链表的存储结构,如可定义如下的存储结构:typedefstructdnode/*定义双向链表结构体*/{intnumber;/*货物编号*/charname[max];/*货物名称*/intcounter;/*货物数量*/structdnode*prior,*next;/*定义两指针,分别指向其前驱和后继*/}dlnode;题目二:单位员工通讯录管理系统(线性表应用)[问题描述]为某个单位建立一个员工通讯录管理系统,可以方便查询每一个员工的办公室电话、手机号、及电子邮箱。其功能包括
3、通讯录链表的建立、员工通讯信息的查询、修改、插入与删除、以及整个通讯录表的输出。[实现提示]可以采用单链表的存储结构,如可定义如下的存储结构:typedefstruct{/*员工通讯信息的结构类型定义*/charnum[5];/*员工编号*/charname[10];/*员工姓名*/charphone[15];/*办公室电话号码*/charcall[15];/*手机号码*/}DataType;/*通讯录单链表的结点类型*/7typedefstructnode{DataTypedata;/*结点的数据域*/structnode*next;/*结点的指针域*/}ListN
4、ode,*LinkList;题目三:哈夫曼编码/译码系统(树应用)[问题描述]利用哈夫曼编码进行通信,可以压缩通信的数据量,提高传输效率,缩短信息的传输时间,还有一定的保密性。现在要求编写一程序模拟传输过程,实现在发送前将要发送的字符信息进行编码,然后进行发送,接收后将传来的数据进行译码,即将信息还原成发送前的字符信息。[实现提示]在本例中设置发送者和接受者两个功能,发送者的功能包括:①输入待传送的字符信息;②统计字符信息中出现的字符种类数和各字符出现的次数(频率);②根据字符的种类数和各自出现的次数建立哈夫曼树;③利用以上哈夫曼树求出各字符的哈夫曼编码;④将字符信息
5、转换成对应的编码信息进行传送。接受者的功能包括:①接收发送者传送来的编码信息;②利用上述哈夫曼树对编码信息进行翻译,即将编码信息还原成发送前的字符信息。从以上分析可发现,在本例中的主要算法有三个:(1)哈夫曼树的建立;(2)哈夫曼编码的生成;(3)对编码信息的翻译。题目四:所有顶点对最短路径问题(图的应用)[问题描述]医院选址:4个村庄之间的交通图如图1所示,村庄之间的距离为图中各边上的权值。现在要从这4个村庄中选择一个村庄建一所医院,问这所医院应建在哪个村庄,才能使离医院最远的村庄到医院最近。6AB856764DC7图1村庄交通图[实现提示]用有向加权图表示的交通图
6、中,有向边表示第i个村庄和第j个村庄之间有道路,边上的权表示这条道路的长度。该问题实质上是求解任意两顶点间最短路径问题。解决思想与方案:(1)运用弗洛伊德算法求出有向图中各顶点对的最短距离。(2)根据步骤(1)结果,求出每个顶点到其他顶点的最短距离的最大值。(3)最大值最小的顶点作为医院所在村庄。结构定义:typedefcharvextype;/*顶点数据类型*/typedefintedgetype;/*边数据类型*/typedefstruct{vextypevex[MANVEX];edgetypearc[MANVEX][MANVEX];intvexnu
7、m,arcnum;/*顶点数和边数*/}Mgraph;/*图的邻接矩阵表示结构定义*/题目五:教学计划编制问题(图的应用)[问题描述]大学的每个专业都要制定教学计划。假设任何专业都有固定的学习年限,每学年含两学期,每学期的时间长度和学分上限值均相等。每个专业开设的课程都是确定的,而且课程在开设时间的安排必须满足先修关系。每门课程有哪些先修课程是确定的,可以有任意多门,也可以没有。每门课恰好占一个学期。试在这样的前提下设计一个教学计划编制程序。[实现提示]1、输入参数应包括:学期总数,一学期的学分上限,每门课的课程号(可以是固定占3位的字母数字串)、学
此文档下载收益归作者所有