数据结构课程设计题目.docx





《数据结构课程设计题目.docx》由会员分享,可在线阅读,更多相关《数据结构课程设计题目.docx(23页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数据结构课程设计题目 10软件网络课程设计 要求: 本课程设计要求在17周周五前完成,课程设计题目如附件所示,共有46题,题目分配方案如下:每人一题,难度高的基础好的同学完成(也可自拟题目,但要体现数据结构的知识点)。软件1001班17周星期五上午9:00-11:30在我办公室2501答辩(按学号来),网络1001班17周星期五下午14:00-16:30在我办公室2501答辩(按学号来),课程设计的源程序学习委员将其汇总起来,然后一个班刻录成一个光盘答辩时给我交过来,答辩人则只需带好课程设计报告过来。课程设计报告规范见另外一个文件,请大家重视这次课程设计,我会根据你的课程设计报告和答辩情况当时
2、给该门课程的成绩,不再另外安排时间接收课程设计报告的答辩要求,谢谢配合! -戴成秋 2022-12-23 课程设计题目: 1.运动会分数统计(难度*) 任务:参加运动会有10个学校,学校编号为110。比赛分成18个男子项目,和12个女子项目。项目编号为男子118,女子1930。不同的项目取前三名积分,前三名的积分分别为:5、3、2。 功能要求: 1)可以输入各个项目的前三名的成绩; 2)能统计各学校总分; 3)可以按学校编号或名称、学校总分、男女团体总分排序输出; 4)数据存入文件并能随时查询 5)规定:输入数据形式和范围:可以输入学校的名称,运动项目的名称 输出形式:有中文提示,各学校分数为
3、整型 存储结构:学生自己根据系统功能要求自己设计,但是要求运动会的相关数据要存储在数据文件中。(数据文件的数据读写方法等相关内容在java语言程序设计的 书上,请自学解决)请在最后的上交资料中指明你用到的存储结构; 测试数据:测试数据及测试结果请在上交的资料中写明; 2.飞机订票系统(难度*) 任务:通过此系统可以实现如下功能: 录入: 可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)查询: 可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓); 可以输入起飞抵达城市,查询飞机航班情况; 订票:(订票情况可以存在一个
4、数据文件中,结构自己设定) 可以订票,如果该航班已经无票,可以提供相关可选择航班; 退票:可退票,退票后修改相关数据文件; 客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。 要求: 根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能; 3.文章编辑(难度*) 功能:从键盘输入一页文字,静态存储在一个文件中 要求:(1)分别统计出其中英文字母数和空格数及整篇文章总字数; (2)统计某一字符串在文章中出现的次数,并输出该次数; (3)删除某一子串,并将后面的字符前移。 存储结构使用线性表,分别用几个子函数实现相应的功能; 输入数据的形式和范围:可以输入大写、小写的英文字
5、母、任何数字及标点符号。 输出形式:(1)分行输出用户输入的各行字符; (2)分4行输出全部字母数、数字个数、空格个数、文章总字数 (3)输出删除某一字符串后的文章; 4.哈希表设计问题描述 针对某个集体中人名设计一个哈希表,使得平均查找长度不超过R,并完成相应的建表和查表程序。 基本要求 假设人名为中国人姓名的汉语拼音形式。待填入哈希表的人名共有30个,取平均查找长度的上限为2。哈希函数用除留余数法构造,用线性探测再散列法或链地址法处理冲突。 测试数据 取读者周围较熟悉的30个人名。 选作内容 (1)从教科书上介绍的集中哈希函数构造方法中选出适用者并设计几个不同的哈希函数,比较他们的地址冲突
6、率(可以用更大的名字集合作实验)。 (2)研究这30个人名的特点,努力找一个哈希函数,使得对于不同的拼音名一定不发生地址冲突。 (3)在哈希函数确定的前提下尝试各种不同处理冲突的方法,考察平均查找长度的变化和造好的哈希表中关键字的聚集性。 5.宿舍管理查询软件(难度*) 任务:为宿舍管理人员编写一个宿舍管理查询软件, 程序设计要求: (1)建立数据文件,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种) (2)实现如下查询功能: 按姓名查询 按学号查询 按房号查询 (3)打印任一查询结果(可以连续操作) 6.校园导航问题(难度*) 设计要求:设计你的学校的平面图,至
7、少包括10个以上的场所,每两个场所间可以有不同的路,且路长也可能不同,找出从任意场所到达另一场所的最佳路径(最短路径)。 7.图书借阅管理系统(难度*) 主要分为两大功能: 1)图书管理(增加图书、查询图书、删除图书、图书借阅、还书); 2)会员管理(增加会员、查询会员、删除会员、借书信息); 8.学生成绩管理(难度*) 实现功能:输入、输出、插入、删除、查找、追加、读入、显示、保存、拷贝、排序、索引、分类合计、退出。 9.活期储蓄帐目管理(难度*) 活期储蓄处理中,储户开户、销户、存入、支出活动频繁,系统设计要求: 1)能比较迅速地找到储户的帐户,以实现存款、取款记账; 2)能比较简单,迅速
8、地实现插入和删除,以实现开户和销户的需要。 10.二叉排序树的实现(难度*) 用顺序和二叉链表作存储结构 1)以回车(n)为输入结束标志,输入数列L,生成一棵二叉排序树T; 2)对二叉排序树T作中序遍历,输出结果; 3)输入元素x,查找二叉排序树T,若存在含x的结点,则删除该结点,并作中序遍历(执 行操作2);否则输出信息“无x”; 11.最小生成树问题(难度*) 设计要求:在n个城市之间建设网络,只需保证连通即可,求最经济的架设方法。 12.通讯录的制作(难度*) 设计目的:用数据结构中的双向链表作数据结构,结合java语言基本知识。编写一个通讯录管理系统。以把所学数据结构知识应用到实际软件
9、开发中去。 设计内容:本系统应完成一下几方面的功能: 1)输入信息enter(); 2)显示信息display( ); 3)查找以姓名作为关键字search( ); 4)删除信息delete( ); 5)存盘save ( ); 6)装入load( ) ; 设计要求: 1)每条信息至包含:姓名(NAME )街道(STREET)城市(CITY)邮编(EIP)国家 (STATE)几项 2)作为一个完整的系统,应具有友好的界面和较强的容错能力 3)上机能正常运行,并写出课程设计报告 13.哈夫曼编码/译码器(难度*) 设计一个利用哈夫曼算法的编码系统,重复地显示并处理以下项目,直到选择退出为止。 1)
10、将权值数据存放在数据文件(文件名为data.txt,位于执行程序的当前目录中) 2)初始化:键盘输入字符集大小n、n个字符和n个权值,建立哈夫曼树; 3)编码:利用建好的哈夫曼树生成哈夫曼编码; 4)输出编码; 5)设字符集及频度如下表: 字符空格 A B C D E F G H I J K L M 频度 186 64 13 22 32 103 21 15 47 57 1 5 32 20 字符 N O P Q R S T U V W X Y Z 频度 57 63 15 1 48 51 80 23 8 18 1 16 1 14.图书管理系统(难度*) 设计一个计算机管理系统完成图书管理基本业务。
11、 1)每种书的登记内容包括书号、书名、著作者、现存量和库存量; 2)对书号建立索引表(线性表)以提高查找效率; 3)系统主要功能如下: *采编入库:新购一种书,确定书号后,登记到图书帐目表中,如果表中已有,则 只将库存量增加; *借阅:如果一种书的现存量大于0,则借出一本,登记借阅者的书证号和归还期 限,改变现存量; *归还:注销对借阅者的登记,改变该书的现存量。 15.走迷宫游戏(难度*) 程序开始运行时显示一个迷宫地图,迷宫中央有一只老鼠,迷宫的右下方有一个粮仓。游戏的任务是使用键盘上的方向键操纵老鼠在规定的时间内走到粮仓处。 要求: 1)老鼠形象可辨认,可用键盘操纵老鼠上下左右移动; 2
12、)迷宫的墙足够结实,老鼠不能穿墙而过; 3)正确检测结果,若老鼠在规定时间内走到粮仓处,提示成功,否则提示失败; 4)找出走出迷宫的所有路径,以及最短路径。 16.顺序结构、动态链表结构下的一元多项式加法的实现。(难度*) 设有一元多项式A m (x)和B n (x). A m (x)=A +A 1 x1+A 2 x2+A 3 x3+ +A m x m B n (x)=B +B 1 x1+B 2 x2+B 3 x3+ +B n x n 请实现求M(x)= A m (x)+B n (x) 要求: 1)结果M(x)中无重复阶项和无零系数项; 2)要求输出结果的升幂和降幂两种排列情况 17.利用栈求
13、表达式的值,可供小学生作业,并能给出分数。(难度*) 要求:(1)判断表达式是否正确,主要是括号问题 (2)题目涉及加减乘除,带括弧的混合运算 18.二叉树的中序、前序、后序的递归、非递归遍历算法,层次序的非递归遍历算法的实 现,应包含建树的实现。(难度*) 要求:遍历的内容应是千姿百态的。 19.敢死队问题(难度*) 有M个敢死队员要炸掉敌人的一碉堡,谁都不想去,排长决定用轮回数数的办法来决定哪个战士去执行任务。如果前一个战士没完成任务,则要再派一个战士上去。现给每个战士编一个号,大家围坐成一圈,随便从某一个战士开始计数,当数到5时,对应的战士就去执行任务,且此战士不再参加下一轮计数。如果此
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 课程设计 题目

限制150内