数据结构课程设计课题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数据结构》课程设计课题表

课程内容

课题

编号

1.设计出链表结构的相关函数库,以便在程序设计中调用

2.设计出顺序表结构的相关函数库,以便在程序设计中调用

3.设计一元多项式的相关函数库,以便在程序设计中调用

4.设计一个模拟计算器的程序,要求能对包含加、减、乘、除、括号运算符的任意整

型表达式进行求解

5.设计出二叉链表结构的相关函数库,以便在程序设计中调用

6.设计出树结构的相关函数库,以便在程序设计中调用

7.采用哈夫曼编码思想实现文件的压缩和恢复功能,并提供压缩前后的占用空间

之比

8.设计出图结构的相关函数库,以便在程序设计中调用

9.校园导航问题

10.比较排序算法的时间性能

11.飞机订票系统任务

12.文章编辑

13.教学计划编制问题

14.活期储蓄帐目管理

15.简易文本编辑器

16.图的遍历和生成树求解实现

17.宿舍管理查询软件

18.图书借阅管理系统

19.二叉排序树的实现

20.稀疏矩阵应用

21.树与二叉树的转换的实现

22.关键路径问题

23.哈希表设计与实现

课题1:设计出链表结构的相关函数库,以便在程序设计中调用。要求:

(1)包括线性表的各种基本函数以及常用函数(自己确定函数、函数形式及理由)。 (2)最好能借助语言环境实现图形显示功能,以便能将抽象的数据结构以图形方式显示出来,将复杂的运行过程以动态方式显示出来。

(3)给出若干例程,演示通过调用自己的库函数来实现相关问题的求解。

课题2:设计出顺序表结构的相关函数库,以便在程序设计中调用。要求:

(1)包括线性表的各种基本函数以及常用函数(自己确定函数、函数形式及理由)。 (2)最好能借助语言环境实现图形显示功能,以便能将抽象的数据结构以图形方式显示出来,将复杂的运行过程以动态方式显示出来。

(3)给出若干例程,演示通过调用自己的库函数来实现相关问题的求解。

课题3:设计一元多项式的相关函数库,以便在程序设计中调用。

要求:

(1)所设计的数据结构应尽可能节省存储空间。

(2)设计一元多项式的各种基本函数,要求有一元多项式的加减法和乘法。

(3)给出若干例程,演示通过调用自己的库函数来实现相关问题的求解。

课题4:设计一个模拟计算器的程序,要求能对包含加、减、乘、除、括号运算符的任意整型表达式进行求解。

要求:要检查有关运算的条件,并对错误的条件产生报警。

课题5:设计出二叉链表结构的相关函数库,以便在程序设计中调用。要求:

(1)包括二叉树的各种基本函数以及常用函数(自己确定函数、函数形式及理由)。 (2)最好能借助语言环境实现图形显示功能,以便能将抽象的数据结构以图形方式显示 出来,将复杂的运行过程以动态方式显示出来。

(3)给出若干例程,演示通过调用自己的库函数来实现相关问题的求解。

课题6:设计出树结构的相关函数库,以便在程序设计中调用。要求:

(1)包括树结构的存储结构及各种基本函数以及常用函数(自己确定函数、函数形式及 理由)。

(2)最好能借助语言环境实现图形显示功能,以便能将抽象的数据结构以图形方式显示 出来,将复杂的运行过程以动态方式显示出来。

(3)给出若干例程,演示通过调用自己的库函数来实现相关问题的求解。

课题7:采用哈夫曼编码思想实现文件的压缩和恢复功能,并提供压缩前后的占用空间

之比。要求如下:

(1)设计构造哈夫曼树的基本函数,以及实现文件压缩和恢复的函数

(2)求解出所构造的哈夫曼树的带权路径长度。

(3)运行时的压缩原文件的规模应不小于5K,演示通过调用自己的库函数来实现文件的压缩和恢复功能。

课题8:设计出图结构的相关函数库,以便在程序设计中调用。要求:

(1)包括图结构的存储结构及各种基本函数以及常用函数(自己确定函数、函数形式及 理由)。

(2)最好能借助语言环境实现图形显示功能,以便能将抽象的数据结构以图形方式显示出来,将复杂的运行过程以动态方式显示出来。

(3)给出若干例程,演示通过调用自己的库函数来实现相关问题的求解。

课题9(校园导航问题):计你的学校的平面图,至少包括10 个以上的场所,每两个

场所间可以有不同的路,且路长也可能不同,找出从任意场所到达另一场所的最佳路径(最 短路径)。

课题10:给出一组实验来比较下列排序算法的时间性能:

快速排序、堆排序、希尔排序、冒泡排序、归并排序(其它排序也可以作为比较的对

象)

要求:

(1)时间性能包括平均时间性能、最好情况下的时间性能、最差情况下的时间性能等。

(2)实验数据应具有说服力,包括:

规模范围要大(如从100 到10000)

数据的初始特性类型要多,因而需要具有随机性;

实验数据的组数要多,即同一规模的数组要多选几种不同类型的数据来实验。

实验结果要能以清晰的形式给出,如图、表等。

(3)算法所用时间必须是机器时间,也可以包括比较和交换元素的次数。

(4)实验分析及其结果要能以清晰的方式来描述,如数学公式或图表等。

(5)要给出实验的方案及其分析。

课题11:飞机订票系统任务:通过此系统可以实现如下功能:

录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自

定)。查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况。订票:(订票情况可以存在一个数据文件中,结构自己设定);可以订票,如果该航班已经 无票,可以提供相关可选择航班。退票: 可退票,退票后修改相关数据文件;客户资料有 姓名,证件号,订票数量及航班情况,订单要有编号。修改航班信息:当航班信息改变可以 修改航班数据文件

要求:

根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能;

课题12:文章编辑:输入一页文字,程序可以统计出文字、数字、空格的个数(2人)。

静态存储一页文章,每行最多不超过80 个字符,共N 行;要求

(1)分别统计出其中

英文字母数和空格数及整篇文章总字数;

(2)统计某一字符串在文章中出现的次数,并输

出该次数;

(3)删除某一子串,并将后面的字符前移。

(4)存储结构使用线性表,分别用几个子函数实现相应的功能;输入数据的形式和范围:可以输入大写、小写的英文字母、任何数字及标点符号。

(5)输出形式:a.分行输出用户输入的各行字符;b.分4 行输出"全部字母数"、"数字个数"、"空格个数"、"文章总字数"c.输出删除某一字符串后的文章。

课题13: 教学计划编制问题

设计要求:针对计算机系本科课程,根据课程之间的依赖关系(如离散数学应在数据

结构之前开设)制定课程安排计划,并满足各学期课程数目大致相同。

课题14:活期储蓄帐目管理

活期储蓄处理中,储户开户、销户、存入、支出活动频繁,系统设计要求:

(1) 能比较迅速地找到储户的帐户,以实现存款、取款记账;

(2) 能比较简单,迅速地实现插入和删除,以实现开户和销户的需要

课题15:简易文本编辑器。

要求:

(1) 具有图形菜单界面;

(2) 查找,替换(等长,不等长),插入(插串,文本块的插入)、块移动(行块,列

块移动),删除;

(3) 可正确存盘、取盘;

相关文档
最新文档