数据结构课程设计题目(共10页).doc
《数据结构课程设计题目(共10页).doc》由会员分享,可在线阅读,更多相关《数据结构课程设计题目(共10页).doc(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上数据结构课程设计一、教学目的和要求课程设计是加强学生实践能力的一个强有力手段。综合课设1主要针对数据结构和c/c+语言开展的实践性课程。要求学生掌握数据结构的应用、算法的编写、类C语言的算法转换成C(C+)程序并上机调试的基本方法。课程设计要求学生在完成程序设计的同时能够写出比较规范的课程设计报告。培养学生综合运用所学理论知识解决复杂实际问题的实践能力、研究性学习能力和团队合作能力。二、课程设计要求1、选好题目:每题一人,每班每个题目只允许一人选做,学习委员将选题情况在课设第一天统计上交。 2、课设报告独立思考,独立完成:课设报告出现雷同超过60%,不论什么原因,一律
2、不及格。班和班之间,相同题目的同学,可以组成小组,相互讨论,共同完成课程设计中各任务的设计和调试要求。小组成员间,算法思路可以相同,程序可以类似,但不能完全一样。课设报告不能雷同超过60%。3、做好上机准备:每次上机前,要事先编制好准备调试的程序,认真想好调试步骤和有关环境的设置方法,准备好有关的文件。4、设计要点:需求分析:在该部分中叙述总共几个模块,每个模块的功能要求。系统设计总体设计:定义某个数据结构的抽象数据类型及其他算法的功能说明。详细设计:在此定义存储结构,每个部分的算法设计说明(建议描述算法采用流程图)。编码实现各个算法实现的源程序,对每个题目要有相应的源程序(每个功能模块采用不
3、同的函数实现)。源程序要按照程序的规则来编写,要结构清晰,重点函数的重点变量,重点功能部分要加上清晰的程序注释。程序能够运行,要有基本的容错功能,尽量避免出现操作失误时出现死循环。调试分析给出实现功能的一组或多组测试数据,程序调试后,将按照此测试数据进行测试的结果列出来。时间复杂度分析,每个模块设计和调试时存在问题的思考(问题是哪些?问题如何解决?),算法的改进设想。课设总结:课程设计过程的收获、遇到问题、遇到问题解决问题过程的思考、程序调试能力的思考、对数据结构这门课程的思考、在课程设计过程中对数据结构课程的认识等内容。5、实现的结果必须进行检查和演示;程序源代码和程序的说明文件必须上交,作
4、为考核内容的一部分;(上交时文件夹的取名规则为:“课设题目(*设计完成)”,如“资源管理系统的设计与实现(张三设计完成)”。该文件夹下包括三个目录:“源代码”、“可执行文件”、“张三_课程设计报告”。由学习委员按规定时间统一上交)。6、报告提交形式: 纸介质(要求B5纸张打印,加封皮)和电子文档。三、考核方法和内容根据课程设计过程中学生的学生态度、题目完成情况、课程设计报告书的质量和回答问题的情况等按照10%、40%、30%、20%加权综合打分。成绩评定实行优秀、良好、中等、及格和不及格五个等级。评分标准:优秀:答辩所有问题都能答出+报告良好良好:答辩所有问题都能答出+报告一般 中等:答辩大部
5、分问题能答出+报告良好及格:答辩大部分问题能答出+报告一般不及格:答辩几乎答不出问题 或者 报告几乎都是代码 或者 雷同部分达到60% 课设报告的装订顺序如下:任务书(签名,把题目要求贴在相应位置,注意下划线)-目录(注意目录的格式,页码)-1、设计任务(题目要求)-2、需求分析(准备选用什么数据逻辑结构?数据元素包含哪些属性?需要哪些函数?为什么要这样设计?最后列出抽象数据类型定义)-3、系统设计(设计实现抽象数据类型,包含选择什么物理存储方式?数据元素的结构体或类定义,以及各函数的设计思路,算法,程序流程图等)-4、编码实现(重要函数的实现代码)-5、调试分析(选择多组测试数据、运行截图、
6、结果分析)-6、课设总结(心得体会)-7、谢辞-8、参考文献;课设报告打印要求:B5纸张打印,报告总页数控制在1015页内,报告中不能全是代码,报告中代码总量控制在150行内。版式:无页眉,有页码,页码居中字号:小四,单倍行距 字体:宋体+Times new Romar截图:截图要配图的编号和图的题目,如:“图1 Insert函数流程图”四、课程设计的题目1、运动会分数统计2、集合的并、交和差运算的程序3、长整数的加法运算4、一元多项式计算器5、车厢调度问题6、文章编辑7、识别广义表的头或尾的演示8、哈夫曼树及其编码9、校园导游咨询10、地图着色问题11、内部排序算法比较12、哈希表的设计与实
7、现线性探测再散列13、哈希表的设计与实现二次探测再散列14、哈希表的设计与实现链地址法15、火车售票系统16、图书管理系统17、客户消费积分管理系统18、产品进销存管理系统19、学生成绩管理系统的设计与实现20、通讯录管理系统的设计与实现线性表21、通讯录管理系统的设计与实现哈希表22、简单目录管理系统的设计与实现23、最短旅程的求解24、迷宫求解25、家谱管理系统的设计与实现26、宿舍管理查询软件27、语言中平衡符号的问题28、算术表达式求解29、表达式求值,可供小学生作业,并能给出分数30、数制转换问题31、病人就医管理32、九宫格问题33、银行业务模拟 34、停车场管理 35、关键路径问
8、题36、地铁站建设问题37、服装销售系统38、歌星大奖赛39、机房机位预约模拟系统40、歌曲信息管理系统41、简单的试题库管理系统42、学生点名系统43、猜数游戏五、数据结构课程设计的具体内容要求:全部采用数据结构课程中的内容实现,采用C或C+实现,逻辑结构只能选线性结构、树型结构、图型结构、集合结构中的一种,不能用数据库。1、运动会分数统计问题描述:参加运动会的n个学校编号为1n。比赛分成m个男子项目和w个女子项目,项目编号分别为1m和m+1mw。由于各项目参加人数差别较大,有些项目取前五名,得分顺序为11,7,4,2,1;还有些项目只取前三名,得分顺序为5,3,2。哪些项目取前五名或前三名
9、由学生自己设定。写一个统计程序产生各种成绩单和得分报表。基本要求: (1)各项目结束时,输入前三名或前五名的项目编号、运动员姓名、校名和名次(成绩);(2)产生各学校的成绩单,内容包括每个学校所取得的每项成绩的项目号、名次(成绩)、姓名和得分,并统计各学校总分;(3)可以按学校编号、男女团体总分排序输出;(4)可以按学校编号查询学校某个项目的情况;(5)可以按项目编号查询取得前三或前五名的学校;(6)演示程序以用户和计算机的对话方式执行。2、集合的并、交和差运算的程序问题描述:编制一个能演示执行集合的并、交和差运算的程序。基本要求:集合的元素限定为大小写字母符a.z A.Z ,集合的大小n53
10、。集合输入的形式为一个以回车符为结束标志的字符串,串中字符顺序不限,且允许出现重复字符或非法字符,程序应能自动滤去。输出的运算结果字符串中将不含重复字符或非法字符。演示程序以用户和计算机的对话方式执行。3、长整数的加法运算 问题描述: 设计一个实现任意长的整数进行加法、减法运算的演示程序。 基本要求: 利用链表实现长整数的存储,每个结点含一个整型变量。提醒:任何整型变量int的范围是-(215-1)(215-1)。输入和输出形式按照中国对于长整数的表示习惯,每四位一组,组间用逗号隔开。 如:-2345,6789,3211;演示程序以用户和计算机的对话方式执行。4、一元多项式计算器问题描述:设有
11、一元多项式Am(x) 和Bn(x). Am(x) = A0+A1x1+A2x2+A3x3+ +Amxm Bn(x) = B0+B1x1+B2x2+B3x3+ +Bnxn试求M(x)= Am(x)+Bn(x)、M(x)= Am(x)-Bn(x)和M(x)= Am(x)Bn(x)。基本要求: 首先判定多项式是否稀疏;分别采用顺序和链式结构实现;结果M(x)中无重复阶项和无零系数项;要求输出结果的升幂和降幂两种排列情况。演示程序以用户和计算机的对话方式执行。5、车厢调度问题问题描述:假设停在铁路调度站(如教科书中图3.1(b)所示)入口处的车厢系列的编号依次为1,2,3,n。设计一个程序,求出所有可
12、能由此输出的长度为n 的车厢系列。基本要求:设计一个程序,求出由一个编号依次为1,2,、,n的车厢序列可能产生的所有出栈系列。利用双向栈存储结构实现调度站和输出序列这两个栈的空间共享。 对于每个输出序列演示出所有操作序列的变化过程 。6、文章编辑问题描述:输入一页文字,可以统计出文字、数字、空格的个数。基本要求:静态存储一页文章,每行最多不超过80个字符,共N行。分别统计出其中英文字母和空格数及整篇文章总字数。统计某一字符串在文章中出现的次数,并输出该次数。 删除某一子串,并将后面的字符前移。存储结构使用线性表,分别用几个子函数实现相应的功能。7、广义表的应用要求实现的广义表的建立、查找、输出
13、、取表头和取表尾以及求深度等。本设计用一个主控菜单程序控制,共分为6个子系统。(1)建立广义表(2)输出广义表(3)结点的查找(4)求广义表表头(5)求广义表表尾(6)求广义表的深度演示程序以用户和计算机的对话方式执行。8、哈夫曼树及其编码问题描述:设计一个利用哈夫曼算法的编码系统,重复地显示并处理以下项目,直到选择退出为止。基本要求:初始化:键盘输入或文件输入字符集大小n、n个字符和n个权值,建立哈夫曼树;编码:利用建好的哈夫曼树生成哈夫曼编码;输出树形的哈夫曼树及哈夫曼编码;设字符集及频度如下表:字符 空格 A B C D E F G H I J K L M频度 197 64 13 22
14、32 103 21 15 47 57 5 1 20 32字符 N O P Q R S T U V W X Y Z 频度 57 63 1 15 48 16 80 23 8 18 1 51 1 9、校园导游咨询问题描述:设计一个校园导游程序,为来访的客人提供各种信息查询服务。基本要求:设计华东交通大学南区的校园平面图,所含景点不少于10个。以图中顶点表示校内各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等相关信息。为来访客人提供图中任意景点相关信息的查询。为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。10、地图着色问题问题描述:设计地图着色软
15、件,对江西地图中11个地级市进行着色,要求相邻地级市所使用的颜色不同,并保证使用的颜色最少。基本要求:地图采用图型数据结构,每个地级市为一个节点,边表示对应的两个地级市相邻。设计着色算法,保证邻接点不是同一种颜色。演示程序以用户和计算机的对话方式进行。11、内部排序算法比较问题描述:试通过随机数据比较各算法的关键字比较次数和关键字移动次数,以取得直观感受。基本要求:至少采用三种方法实现上述问题求解(提示,可采用的方法有插入排序、希尔排序、起泡排序、快速排序、选择排序、堆排序、归并排序)。待排序表的表长不小于100,其中的数据要用伪随机数产生程序产生;至少要用5组不同的输入数据作比较;比较的指标
16、为有关键字参加的比较次数和关键字的移动次数(关键字交换计为3次移动)。最后对结果作出简单分析,包括对各组数据得出结果波动大小的解释。12、哈希表的设计与实现线性探测再散列问题描述:设计哈希表实现电话号码查找系统。基本要求:2 设每个记录有下列数据项:电话号码、用户名、地址;3 从键盘输入各记录,分别以电话号码和用户名为关键字建立不同的哈希表;4 采用线性探测再散列的方法解决冲突;5 查找并显示给定电话号码的记录;6 查找并显示给定用户名的记录。13、哈希表的设计与实现二次探测再散列问题描述:设计哈希表实现电话号码查找系统。基本要求:(1)设每个记录有下列数据项:电话号码、用户名、地址;(2)从
17、键盘输入各记录,分别以电话号码和用户名为关键字建立不同的哈希表;(3)采用二次探测再散列的方法解决冲突;(4)查找并显示给定电话号码的记录;(5)查找并显示给定用户名的记录。14、哈希表的设计与实现链地址法问题描述:设计哈希表实现电话号码查找系统。基本要求:(1)设每个记录有下列数据项:电话号码、用户名、地址;(2)从键盘输入各记录,分别以电话号码和用户名为关键字建立不同的哈希表;(3)采用链地址法解决冲突;(4)查找并显示给定电话号码的记录;(5)查找并显示给定用户名的记录。15、火车售票系统问题描述:通过此系统可以实现售票、退票、车票剩余情况查询等功能。每张车票包含车次、车厢、座位信息。基
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 课程设计 题目 10
限制150内