数据结构课程设计题目36
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、运动会分数统计
问题描述:
参加运动会的n个学校编号为1~n。比赛分成m个男子项目和w个女子项目,项目编号分别为1~m和m+1~m+w。由于各项目参加人数差别较大,有些项目取前五名,得分顺序为7,5,3,2,1;还有些项目只取前三名,得分顺序为5,3,2。哪些项目取前五名或前三名由学生自己设定。写一个统计程序产生各种成绩单和得分报表。
基本要求:
(1)各项目结束时,输入前三名或前五名的项目编号、运动员姓名、校名和名次(成绩);
(2)产生各学校的成绩单,内容包括每个学校所取得的每项成绩的项目号、名次(成绩)、姓名和得分,并统计各学校总分;
(3)可以按学校编号、男女团体总分排序输出;
(4)可以按学校编号查询学校某个项目的情况;
(5)可以按项目编号查询取得前三或前五名的学校。
2、集合的并、交和差运算的程序
问题描述:
编制一个能演示执行集合的并、交和差运算的程序。
基本要求:
⑵集合的元素限定为小写字母符[′a′….′z ′],集合的大小n<27。
⑵集合输入的形式为一个以"回车符"为结束标志的字符串,串中字符顺序不限,且允许出现重复字符或非法字符,程序应能自动滤去。
⑶输出的运算结果字符串中将不含重复字符或非法字符。
⑷演示程序以用户和计算机的对话方式执行。
3、长整数的加法运算
问题描述:
设计一个实现任意长的整数进行加法、减法运算的演示程序。
基本要求:
1利用链表实现长整数的存储,每个结点含一个整型变量。
2任何整型变量的范围是-(2^15-1)~(2^15-1)。
3输入和输出形式按照中国对于长整数的表示习惯,每四位一组,组间用逗号隔开。如:-2345,6789,3211;
4、一元多项式计算器
问题描述:
设有一元多项式A m(x) 和B n(x).
A m(x) = A0+A1x1+A2x2+A3x3+… +A m x m
B n(x) = B0+B1x1+B2x2+B3x3+… +B n x n
试求M(x)= A m(x)+B n(x)、M(x)= A m(x)-B n(x)和M(x)= A m(x)×B n(x)。
基本要求:
⑴首先判定多项式是否稀疏;
⑵分别采用顺序和链式结构实现;
⑶结果M(x)中无重复阶项和无零系数项;
⑷要求输出结果的升幂和降幂两种排列情况。
5、车厢调度问题
问题描述:
假设停在铁路调度站(如教科书中图3.1(b)所示)入口处的车厢系列的编号依次为1,2,3,…n。设计一个程序,求出所有可能由此输出的长度为n 的车厢系列。
⑴设计一个程序,求出由一个编号依次为1,2,、、、,n的车厢序列可能产生的所有出栈系列。
⑵利用双向栈存储结构实现调度站和输出序列这两个栈的空间共享。
⑶对于每个输出序列演示出所有操作序列的变化过程。
6、文章编辑
问题描述:
输入一页文字,可以统计出文字、数字、空格的个数。
基本要求:
⑴静态存储一页文章,每行最多不超过80个字符,共N行。
⑵分别统计出其中英文字母和空格数及整篇文章总字数。
⑶统计某一字符串在文章中出现的次数,并输出该次数。
⑶删除某一子串,并将后面的字符前移。
⑷存储结构使用线性表,分别用几个子函数实现相应的功能。
7、广义表的应用
要求实现的广义表的建立、查找、输出、取表头和取表尾以及求深度等。
本设计用一个主控菜单程序控制,共分为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 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、地图着色问题
问题描述:
设计地图着色软件,对江西地图中11个地级市进行着色,要求相邻地级市所使用的颜色不同,并保证使用的颜色最少。
基本要求:
⑴地图采用图型数据结构,每个地级市为一个节点,边表示对应的两个地级市相邻。
⑵设计着色算法,保证邻接点不是同一种颜色。
⑶演示程序以用户和计算机的对话方式进行。
11、内部排序算法比较
试通过随机数据比较各算法的关键字比较次数和关键字移动次数,以取得直观感受。
基本要求:
⑴至少采用三种方法实现上述问题求解(提示,可采用的方法有插入排序、希尔排序、起泡排序、快速排序、选择排序、堆排序、归并排序)。
⑵待排序表的表长不小于100,其中的数据要用伪随机数产生程序产生;至少要用5组不同的输入数据作比较;比较的指标为有关键字参加的比较次数和关键字的移动次数(关键字交换计为3次移动)。
⑶最后对结果作出简单分析,包括对各组数据得出结果波动大小的解释。
12、哈希表的设计与实现——线性探测再散列
问题描述:
设计哈希表实现电话号码查找系统。
基本要求:
⑸设每个记录有下列数据项:电话号码、用户名、地址;
⑹从键盘输入各记录,分别以电话号码和用户名为关键字建立不同的哈希表;
⑺采用线性探测再散列的方法解决冲突;
⑻查找并显示给定电话号码的记录;
⑼查找并显示给定用户名的记录。
13、哈希表的设计与实现——二次探测再散列
问题描述:
设计哈希表实现电话号码查找系统。
基本要求:
(1)设每个记录有下列数据项:电话号码、用户名、地址;
(2)从键盘输入各记录,分别以电话号码和用户名为关键字建立不同的哈希表;
(3)采用二次探测再散列的方法解决冲突;
(4)查找并显示给定电话号码的记录;
(5)查找并显示给定用户名的记录。
14、哈希表的设计与实现——链地址法
问题描述:
设计哈希表实现电话号码查找系统。
基本要求:
(1)设每个记录有下列数据项:电话号码、用户名、地址;
(2)从键盘输入各记录,分别以电话号码和用户名为关键字建立不同的哈希表;
(3)采用链地址法解决冲突;
(4)查找并显示给定电话号码的记录;
(5)查找并显示给定用户名的记录。
15、火车售票系统
问题描述:
通过此系统可以实现售票、退票、车票剩余情况查询等功能。每张车票包含车次、车厢、座位信息。基本要求:
⑴在售票、退票、查询剩余票等环节中,都必须显示出车票的信息,即车次、车厢、座位情况。
⑵为简单起见,在此假设所有出售的车票均为同一车次的车票。
⑶退票时,必须是车站售出的车票才能退,否则视为无效票,不能退票,而且退票可以再次销售。
16、图书管理系统
问题描述:
设计一个计算机管理系统完成图书管理基本业务。
基本要求: