数据结构课程设计选题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据结构课程设计选题
1、校园导游咨询(为来访的客人提供各种信息服务)
基本要求:
1、设计淮阴师范学院北校区平面图,在校园景点不低于10个。以图中顶点表示校园内各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等有关信息。
2、为来访客人提供图中任意景点相关信息的查询。
3、为来访客人提供任意景点的问路查询,即查询任意两个景点之间的一条最短路径。
设计等级 B
2、迷宫问题
问题描述:编写一个程序求解迷宫问题。迷宫由m行n列的二维数组设置,0表示无障碍,1表示有障碍。设入口为(1,1),出口为(m,n),每次只能从一个无障碍单元移到周围四个方向上任一无障碍单元。编程给出通过路径或无法通行的信息。
要求:
1、输出迷宫的所有路径
2、筛选出最短路径。
设计等级 A
3、算术表达式的求解
问题描述:以字符序列的形式从终端输入语法正确的、不含变量的整数算术表达式,编写程序求出该表达式的后缀表达式;计算最后的结果。
基本要求:
1、表达式中至少包含加、减、乘、除四种基本运算
2、表达式中括号的层次至少为2层
3、能够判断算术表达式正确与否
4、对于错误表达式给出提示
5、输出后缀表达式
6、计算结果
设计等级 A
4、通讯录系统设计
问题描述:采用链表结构设计一个通讯录系统。
基本要求:
1)通讯录链表的建立
2)通讯者结点的插入
3)通讯者结点的删除
4)通讯者结点的查询
5)通讯录输出
6)设计退出系统
7)要求链表的读取要在文件中完成。
设计等级 A
5、树的应用
问题描述:运用二叉链表结构存储一棵高度不低于5的树,完成以下操作
1、输出树的高度
2、输出树根到其它任意结点的路径
3、输出该树的后序遍历序列
4、计算任意结点的所处的高度
设计等级 A
6、文本文件单词的检索与计数
问题描述:要求编程建立一个文本文件,每个单词不包含空格且不跨行,单词由字符序列构成且区分大小写;
要求:
1、统计给定单词在文本文件中出现的总次数;
2、检索输出某个单词出现在文本中的行号、在该行中出现的次数以及位置。
设计等级 A
7、二叉平衡排序树
问题描述:创建二叉平衡排序树
基本要求:
1、输入数据的数量不得低于15个
2、建立二叉平衡排序树(要求包括LL型LR型RR型RL型四种调整方式)
3、完成任意数据的查找(要求给出查找执行的次数)
设计等级 B
8、构造可以使n个城市连接的最小生成树
问题描述:给定一个地区的n个城市间的距离网,用Prim算法建立最小生成树,并计算得到的最小生成树的代价。
基本要求:
1、城市间的距离网采用邻接矩阵表示,若两个城市之间不存在道路,则将相应边的权值设为自己定义的无穷大值。(要求至少10个城市,15条边)
2、最小生成树中包括的边及其权值,并显示得到的最小生成树的代价。
设计等级 B
9、哈夫曼编/译码器
1、问题描述:
利用哈夫曼编码进行信息通信可以大大提高信道利用率,缩短信息传输时间,降低传输成本。但是,这要求在发送端通过一个编码系统对待传数据预先编码,在接收端将传来的数据进行译码(复原)。试写一个哈夫曼编/译码系统。
2、基本要求:
一个完整的系统应具有以下功能:
(1)初始化。从终端读入字符集大小n,以及n个字符和n个权值,建立哈夫曼树,并将它存于文件中。
(2)编码。利用已建好的哈夫曼树对文件中的正文进行编码,然后将结果存入文件中。
(3)译码。利用已建好的哈夫曼树将文件中的代码进行译码,结果存入文件中。
(4)完成数据测试,要求编码字符不低于15个,编码文件的长度不低于50个字符。(5) 计算平均编码长度。
设计等级 B
10、二叉树的遍历
问题描述:创建二叉树并遍历
基本要求:
1、分别运用非递归的方式完成对二叉树的先序和后序遍历
2、输出二叉树的高度
3、输出每一层的结点数
4、查找结点P 和结点Q的最近共同祖先
设计等级 B
11、寻找舞伴
一班有m个女生,有n个男生(m不等于n),现要开一个舞会. 男女生分别编号坐在舞池的两边的椅子上.每曲开始时,依次从男生和女生中各出一人配对跳舞, 本曲没成功配对者坐着等待下一曲找舞伴.
请设计一系统模拟动态地显示出上述过程,要求如下:
1)输出每曲配对情况
2)计算出任何一个男生(编号为X)和任意女生(编号为Y),在第K曲配对跳舞的情况。
设计等级 A
12、关键路径和拓扑排序
问题描述:创建一个AOE网完成如下要求
基本要求:
1、采用邻接表结构存储网(结点数量不低于10个,边的数量不低于15条)
2、输出一个拓扑序列
3、输出所有关键路径并计算路径长度。
设计等级 B
13、设计一个航空客运定票系统。
要求:
1、每条航线所涉及的信息有:终点站名、航班号、飞机号、飞机周日(星期几)、乘员定额、余票量、订定票的客户名单(包括姓名、订票量、舱位等级1,2或3)以及等候替补的客户名单(包括姓名、所需数量)。
2、系统能实现的操作和功能如下:
1)查询航线:根据客户提出的终点站名输出如下信息:航班号、飞机号、星期几飞行,最近一天航班的日期和余票额;
2)承办订票业务:根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若有余票,则为客户办理订票手续,输出座位号;若已满员或余票少余订票额,则需重新询问客户要求。若需要,可登记排队候补;
3)承办退票业务:根据客户提出的情况(日期、航班号),为客户办理退票手续,然后查询该航班是否有人排队候补,首先询问排在第一的客户,若所退票额能满足他的要求,则为