数据结构课程设计任务书.docx
《数据结构课程设计任务书.docx》由会员分享,可在线阅读,更多相关《数据结构课程设计任务书.docx(16页珍藏版)》请在冰点文库上搜索。
数据结构课程设计任务书
《数据结构课程设计任务书》
理学院
2013-5
一、课程设计报告内容要求:
姓名:
学号:
完成日期:
(一)问题描述及分析:
说明所要解决的问题是什么,要求实现什么具体的功能。
(二)数据结构描述:
描述该设计所需使用的数据结构及其特性。
(三)主要算法流程描述:
1、首先通过文字和流程图描述算法的总体思路和框架;
2、然后对给出各个组成模块解决思路的文字描述、详细实现步骤的流程图及算法实现的源程序(及对每个功能模块详细分析,采用函数实现)。
注意:
源程序要求严格按照编程规则来写,结构清晰,各个函数及重点变量要求加上注释。
(四)使用说明:
说明程序如何运行,如何输入测试数据,会出现的输出结果等,给出实例(要求将程序运行结果通过截屏打印输出,最后贴在课程设计本上)。
(五)调试分析说明:
1、说明每个模块设计和调试时中遇到的问题有哪些?
如何解决的?
2、分析测试数据的测试输出结果及程序的时间复杂度分析。
3、考虑算法的改进设想。
(六)课设总结:
1、整个课程设计的难点部分是什么?
你是怎么分析解决的?
2、通过课程设计遇到问题及求解过程,谈谈自己的收获(遇到问题、遇到问题解决问题过程的思考、程序调试能力的思考);
3、通过课程设计过程对《数据结构》课程的认识和思考。
注意:
请大家统一到教材科购买课程设计本和档案袋,整个课程设计报告要用手写,对于实验结果则将截图打印贴上去。
课程设计本上前两页的内容都需填写完整。
二、时间安排
请大家于2013年12月11日考试时将课程设计报告本交上了。
三、课程设计题目
1、一元多项式计算器
设计题目
一元多项式计算器
已知技术参数和设计要求
基本功能定为
(1)输入并建立一元多项式
(2)输出多项式,输出形式为整数序列:
c1Xe1+c2Xe2+…+cnXen,其中n是多项式的项数数,ci和ei分别是第i项的系数和指数,序列按指数升序排列
(3)两个多项式相加,建立并输出和多项式
(4)两个多项式相减,建立并输出差多项式
(5)两个多项式相乘,建立乘积多项式
(6)计算多项式在x处的值
实现提示:
用带表头结点的单链表存储多项式
设计内容与步骤
1、结点结构的设计
2、算法设计与分析
3、程序设计、实现、调试
4、课程设计说明书
设计工作计划与进度安排
1、设计工作4学时
2、实现与调试16学时
3、课程设计说明书8学时
设计考核要求
1、考勤20%
2、课程设计说明书50%
3、答辩30%
光电子系制
2、表达式求值
设计题目
利用栈求表达式的值,可供小学生作业,并能给出分数。
已知技术参数和设计要求
要求:
建立试题库文件,随机产生n个题目;题目涉及加减乘除,带括弧的混合运算;随时可以退出;保留历史分数,能回顾历史,给出与历史分数比较后的评价
设计内容与步骤
1、结点结构的设计
2、算法设计与分析
3、程序设计、实现、调试
4、课程设计说明书
设计工作计划与进度安排
1、设计工作4学时
2、实现与调试16学时
3、课程设计说明书8学时
设计考核要求
1、考勤20%
2、课程设计说明书50%
3、答辩30%
光电子系制
3、哈夫曼编码
设计题目
哈夫曼编\译码器
已知技术参数和设计要求
题目的基本要求是:
1.初始化,键盘输入字符集大小n,n个字符和n个权植,建立哈夫曼树。
2.编码,利用建好的huffman树生成huffman编码;
3.输出编码;
4.译码功能;
5.字符和频度如下:
字符空格ABCDEFGHIJKLMNOPQ
频度18664132232103211547571232205763151
字符RSTUVWXYZ
频度48518023818116
设计内容与步骤
1、选择合适的数据结构
2、结点结构的设计
3、算法设计与分析
4、程序设计、实现、调试
5、课程设计说明书
设计工作计划与进度安排
1、设计工作4学时
2、实现与调试16学时
3、课程设计说明书8学时
设计考核要求
1、考勤20%
2、课程设计说明书50%
3、答辩30%
光电子系制
4、图的创建、遍历及求生成树
设计题目
图的遍历和生成树求解实现
已知技术参数和设计要求
要求:
1、先任意创建一个图;
2、图的DFS,BFS的递归和非递归算法的实现
3、最小生成树(两个算法)的实现,求连通分量的实现
要求用邻接矩阵、邻接表、十字链表多种结构存储实现
设计内容与步骤
1、结点结构的设计
2、算法设计与分析
3、程序设计、实现、调试
4、课程设计说明书
设计工作计划与进度安排
1、设计工作4学时
2、实现与调试16学时
3、课程设计说明书8学时
设计考核要求
1、考勤20%
2、课程设计说明书50%
3、答辩30%
光电子系制
附:
校园导游问题
设计题目
校园导航问题
已知技术参数和设计要求
设计要求:
设计你的学校的平面图,至少包括10个以上的场所,每两个场所间可以有不同的路,且路长也可能不同,找出从任意场所到达另一场所的最佳路径(最短路径)。
设计内容与步骤
1、结点结构的设计
2、算法设计与分析
3、程序设计、实现、调试
4、课程设计说明书
设计工作计划与进度安排
1、设计工作4学时
2、实现与调试16学时
3、课程设计说明书8学时
设计考核要求
1、考勤20%
2、课程设计说明书50%
3、答辩30%
光电子系制
附:
约瑟夫环问题
设计题目
约瑟夫环问题
已知技术参数和设计要求
任务:
编号是1,2,……,n的n个人按照顺时针方向围坐一圈,每个人只有一个密码(正整数)。
一开始任选一个正整数作为报数上限值m,从第一个人开始顺时针方向自1开始顺序报数,报到m时停止报数。
报m的人出列,将他的密码作为新的m值,从他在顺时针方向的下一个人开始重新从1报数,如此下去,直到所有人全部出列为止。
设计一个程序来求出出列顺序。
要求:
利用单向循环链表存储结构模拟此过程,按照出列的顺序输出各个人的编号。
测试数据:
m的初值为20,n=7,7个人的密码依次为3,1,7,2,4,7,4,则正确的输出是什么?
要求:
输入数据:
输入m的初值,n,输入每个人的密码,建立单循环链表。
输出形式:
建立一个输出函数,将正确的输出序列。
设计内容与步骤
1、结点结构的设计
2、算法设计与分析
3、程序设计、实现、调试
4、课程设计说明书
设计工作计划与进度安排
1、设计工作4学时
2、实现与调试16学时
3、课程设计说明书8学时
设计考核要求
1、考勤20%
2、课程设计说明书50%
3、答辩30%
光电子系制
附:
学生成绩管理系统
设计题目
学生成绩管理系统
已知技术参数和设计要求
现有学生成绩信息文件1(1.txt),内容如下
姓名学号语文数学英语
张明明01677882
李成友02789188
张辉灿03688256
王露04564577
陈东明05673847
….......…
学生成绩信息文件2(2.txt),内容如下:
姓名学号语文数学英语
陈果31576882
李华明32889068
张明东33484256
李明国34504587
陈道亮35475877
….......…
试编写一管理系统,要求如下:
1、实现对两个文件数据进行合并,生成新文件3.txt
2、抽取出三科成绩中有补考的学生并保存在一个新文件4.txt
3、对合并后的文件3.txt中的数据按总分降序排序(至少采用两种排序方法实现)
4、输入一个学生姓名后,能查找到此学生的信息并输出结果(至少采用两种查找方法实现)
5、要求使用结构体,链或数组等实现上述要求.
采用多种方法且算法正确者,可适当加分.
设计内容与步骤
1、结点结构的设计
2、算法设计与分析
3、程序设计、实现、调试
4、课程设计说明书
设计工作计划与进度安排
1、设计工作4学时
2、实现与调试16学时
3、课程设计说明书8学时
设计考核要求
1、考勤20%
2、课程设计说明书50%
3、答辩30%
光电子系制
电子信息科学与技术专业
附:
小型图书馆管理系统
设计题目
小型图书馆管理系统(链表的插入,排序,查询,删除)
已知技术参数和设计要求
对C语言软件开发有一定的认识,了解并掌握开发的各个流程,以及各功能代码的实现。
创建一个图书馆管理系统,可进行还书(插入),排序,查找,借书(删除)操作。
【设计原理】
1.所有信息存储在一个带头结点的单向链表中,每个结点存储一条图书记录,即结构体(book),其中各域为:
书号(number)、书名(title)、作者(writer)、定价(pricing)、出版社(publishinghouse),指针域(next)。
2.系统初始时图书记录为空,由用户录入信息,进行插入(包括创建),排序,查找,删除操作。
3.有两种排序算法可选:
选择排序和直接插入排序,均由链表实现。
4.如输入有错,给出出错提示。
设计内容与步骤
1、结点结构的设计
2、算法设计与分析
3、程序设计、实现、调试
4、课程设计说明书
设计工作计划与进度安排
1、设计工作4学时
2、实现与调试16学时
3、课程设计说明书8学时
设计考核要求
1、考勤20%
2、课程设计说明书50%
3、答辩30%
光电子系制
学与技术专业
电子信息科学与技术专业
附:
停车场问题
设计题目
停车场问题
已知技术参数和设计要求
停车场是一条可以停放n辆车的狭窄通道,且只有一个大门汽车停放安到达时间的先后依次由北向南排列(大门在最南端,最先到达的第一辆车停在最北端)若停车场已经停满n辆车,后来的汽车在便道上等候,一旦有车开走,排在便道上的第一辆车可以开入;当停车场的某辆车要离开时,停在他后面的车要先后退为他让路,等它开出后其他车在按照原次序开入车场,每两停在车场的车要安时间长短缴费。
要求:
以栈模拟停车场,以队列车场外的便道,按照从终端输入的数据序列进行模拟管理。
每一组数据包括三个数据项:
汽车“到达”或“离去”信息、汽车牌照号码、以及到达或离去的时刻。
对每一组数据进行操作后的信息为:
若是车辆到达,则输出汽车在停车场的内或便道上的位置:
若是车辆离去则输出汽车在停车场内的停留时间和应缴纳的费用(在便道上的停留时间不收费)。
栈以顺序结构实现,队列以链表结构实现。
设计内容与步骤
1、结点结构的设计
2、算法设计与分析
3、程序设计、实现、调试
4、课程设计说明书
设计工作计划与进度安排
1、设计工作4学时
2、实现与调试16学时
3、课程设计说明书8学时
设计考核要求
1、考勤20%
2、课程设计说明书50%
3、答辩30%
光电子系制
附:
通讯录的制作
设计题目
通讯录的制作
已知技术参数和设计要求
设计目的:
用〈〈数据结构〉〉中的双向链表作数据结构,结合C语言基本知识。
编写一个通讯录管理系统。
以把所学数据结构知识应用到实际软件开发中去。
设计内容:
本系统应完成一下几方面的功能:
输入信息——enter();
显示信息———display();
查找以姓名作为关键字———search();
删除信息———delete();
存盘———save();
装入———load();
设计要求:
1)每条信息至包含:
姓名(NAME)街道(STREET)城市(CITY)邮编(EIP)国家(STATE)几项
2)作为一个完整的系统,应具有友好的界面和较强的容错能力
3)上机能正常运行
设计内容与步骤
1、结点结构的设计
2、算法设计与分析
3、程序设计、实现、调试
4、课程设计说明书
设计工作计划与进度安排
1、设计工作4学时
2、实现与调试16学时
3、课程设计说明书8学时
设计考核要求
1、考勤20%
2、课程设计说明书50%
3、答辩30%
光电子系制
附:
五子棋小游戏
设计题目
五子棋小游戏
已知技术参数和设计要求
要求:
编写基于命令行的五子棋小游戏
阶段:
1、实现五子棋的人人对局功能
2、实现五子棋的人机对局功能
3、实现两机对局
前两阶段必须实现,后一阶段不做要求。
设计内容与步骤
1、选择合适的数据结构
2、结点结构的设计
3、算法设计与分析
4、程序设计、实现、调试
5、课程设计说明书
设计工作计划与进度安排
1、设计工作4学时
2、实现与调试16学时
3、课程设计说明书8学时
设计考核要求
1、考勤20%
2、课程设计说明书50%
3、答辩30%
附:
航空客运订票系统
设计题目
航空客运订票系统
已知技术参数和设计要求
通过此系统可以实现如下功能:
录入:
可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定);
查询:
可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况;
订票:
(订票情况可以存在一个数据文件中,结构自己设定)可以订票,如果该航班已经无票,可以提供相关可选择航班;
退票:
可退票,退票后修改相关数据文件;客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。
修改航班信息:
当航班信息改变可以修改航班数据文件
要求:
根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能;
设计内容与步骤
1、选择合适的数据结构
2、结点结构的设计
3、算法设计与分析
4、程序设计、实现、调试
5、课程设计说明书
设计工作计划与进度安排
1、设计工作4学时
2、实现与调试16学时
3、课程设计说明书8学时
设计考核要求
1、考勤20%
2、课程设计说明书50%
3、答辩30%
光电子系制
附:
迷宫问题
设计题目
迷宫问题
已知技术参数和设计要求
任务:
可以输入一个任意大小的迷宫数据,用非递归的方法求出一条走出迷宫的路径,并将路径输出;
要求:
在上交资料中请写明:
存储结构、基本算法(可以使用程序流程图)、源程序、测试数据和结果、算法的时间复杂度、另外可以提出算法的改进方法;
设计内容与步骤
1、选择合适的数据结构
2、结点结构的设计
3、算法设计与分析
4、程序设计、实现、调试
5、课程设计说明书
设计工作计划与进度安排
1、设计工作4学时
2、实现与调试16学时
3、课程设计说明书8学时
设计考核要求
1、考勤20%
2、课程设计说明书50%
3、答辩30%
光电子系制