数据结构课程设计任务书.docx

上传人:h**** 文档编号:26149058 上传时间:2022-07-16 格式:DOCX 页数:9 大小:14.95KB
返回 下载 相关 举报
数据结构课程设计任务书.docx_第1页
第1页 / 共9页
数据结构课程设计任务书.docx_第2页
第2页 / 共9页
点击查看更多>>
资源描述

《数据结构课程设计任务书.docx》由会员分享,可在线阅读,更多相关《数据结构课程设计任务书.docx(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、数据结构课程设计任务书 数据结构与算法课程设计任务书 一数据结构与算法课程设计的目的和要求 (一)设计的目的 数据结构与算法课程设计是在学完数据结构与算法课程之后的实践教学环节。该实践教学是软件设计的综合训练,包括问题分析、总体结构设计、用户界面设计、程序设计基本技能和技巧。要求学生在设计中逐步提高程序设计能力,培养科学的软件工作方法。学生通过数据结构课程设计在下述各方面得到锻炼: 1能根据实际问题的具体情况,结合数据结构与算法课程中的基本理论和基本算法,正确分析出数据的逻辑结构,合理地选择相应的存储结构,并能设计出解决问题的有效算法。 2提高程序设计和调试能力。学生通过上机实习,验证自己设计

2、的算法的正确性。学会有效利用基本调试方法,迅速找出程序代码中的错误并且修改。 3培养算法分析能力。分析所设计算法的时间复杂度和空间复杂度,进一步提高程序设计水平。 (二)设计要求 1学生必须仔细阅读数据结构与算法课程设计方案,认真主动完成课设的要求。有问题及时主动通过各种方式与教师联系沟通。 2学生要发挥自主学习的能力,充分利用时间,并在课设过程中不断检测自己的计划完成情况,及时向教师汇报。 3课程设计按照教学要求需要一周时间完成,属教师安排上机时间学生不得缺席。二设计内容及步骤 1分析问题,给出数学模型,设计相应的数据结构。 (1)分析问题的特点,用数学表达式或其它形式描述其数学模型。 (2

3、)选择能够体现问题本身特点的逻辑结构。 (3)在逻辑结构确定的情况下,为算法的设计选择相应的存储结构,顺序存储结构和非顺序存储结构的不同存储方式,其对应的算法也不相同。 2算法设计 在已经选择好数据结构的前提下,为解决问题设计算法。 (1)确定所需模块 对于稍复杂的程序设计,要充分利用模块化程序设计方法,自顶向下,逐步细化,在整体思路确定的情况下,考虑所需模块数,各模块完成功能以及模块之间的数据联系和调用关系。 (2)各子模块功能描述 给出主要模块的算法描述,用流程图或伪代码表示。 (3)模块之间的调用关系 给出算法各模块之间的关系图示 3源程序清单 为了提高工作效率,充分利用上机调试程序的时

4、间,要求学生在上机之前给出源程序清单。 4算法分析 经过上机调试,源程序运行正确,并且实现算法要求的功能,解决课程设计题目中给出的问题后,分析各模块算法的时间复杂度和空间复杂度。进一步体会:程序=数据结构+ 算法 二上交相关材料要求 上交的成果的内容由以下两部分组成,缺一不可 1上交源程序:学生按照课程设计的具体要求所开发的所有源程序(放一个文件夹中); 2课程设计报告:按照课程设计的具体要求建立的功能模块,每个模块要求按照如下几个内容认真完成;其中包括: 设计题目 设计内容 概要设计:确定所需模块及模块间调用关系 算法描述:给出各模块流程图及代码 算法分析 心得体会 参考资料 三课程设计的成

5、绩评定 1程序设计结果(40) 2实验报告(40) 3平时表现(20) 四课程设计完成时间 第12周周五下午17:40之前。 五上机时间安排表 课程设计的时间及教师安排 六数据结构课程设计题目 题目1:任意长的整数加法 问题描述:设计一个算法,实现两个任意长的整数的加法运算。 基本要求:利用双向循环链表,设计一个实现任意长的整数进行加法运算的演示程序。要求输入和输出每四位一组,组间用逗号隔开。如:1,0000,0000,0000,0000。 题目2:集合运算 功能:使用链表来表示集合,完成集合的交、并、差等操作。 主要包含以下内容: 1初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个

6、数; 2完成最低要求: 3进一步要求: 题目3:一元多项式加法、乘法运算的实现 功能: 完成两个一元多项式作加法、乘法,给出明确的等式形式。 即: m m m x A x A x A A x A +=22110)( n n n x B x B x B B x B +=22110)( 求:n n m x B x A +)(、n n m x B x A ?)( 分步实施: 1初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数; 2完成最低要求:建立一个文件,实现两个一元二次多项式作乘法。 题目4:二叉排序树的实现 用二叉链表为存储结构 1以回车(n)为输入结束标志,输入数列L ,生成一棵

7、二叉排序树T ; 2对二叉排序树T 作中序遍历,输出结果; 3输入元素x,查找二叉排序树T,若存在含x 的结点,则删除该结点,并作中序遍历(执行操作;否则输出信息“无x ”; 题目5: 内部排序算法的性能分析 利用随机函数产生N个随机整数(20000以上),对这些数进行多种方法进行排序。 要求: 1至少采用三种方法实现上述问题求解(提示,可采用的方法有插入排序、希尔排序、起泡排序、快速排序、选择排序、堆排序、归并排序)。并把排序后的结果保存在不同的文件中。 2统计每一种排序方法的性能(以上机运行程序所花费的时间为准进行对比),找出其中两种较快的方法。 3如果采用4种或4种以上的方法者,可适当加

8、分。 题目6:哈希表的设计与实现 问题描述:设计哈希表实现电话号码查询系统。 基本要求: 1、设每个记录有下列数据项:电话号码、用户名、地址; 2、从键盘输入各记录,分别以电话号码和用户名为关键字建立哈希表; 3、采用再哈希法解决冲突; 4、查找并显示给定电话号码的记录; 5、查找并显示给定用户名的记录。 6、在哈希函数确定的前提下,尝试各种不同类型处理冲突的方法(至少两种),考察平均查找长度的变化。 题目7:树的应用家谱查询系统 问题描述:讨论对任意树的存储,并讨论在此存储结构下的基本操作。 1建立树(家谱)存储结构; 2树(家谱)的遍历方法; 3结点(家谱成员)查询; 4求树上结点(家谱成

9、员)的路径(即从根结点到此结点的路径); 等操作,可以自由发挥。 题目8:队列的应用火车厢重排问题 假设一列货运列车共有n节编号分别为1n的车厢,在进站前这n节车厢并不是按其编号有序排列;现要求重新排列各车厢,使该列车在进入车站时,所有车厢从前到后按编号1n 的次序排列,以便各车厢能够停靠在与其编号一致的站点。 为了达到这样的效果,可以在一个转轨站里完成车厢的重排工作。在转轨站中有一个入轨,一个出轨和K个位于入轨与出轨间的缓冲铁轨。如下图所示。开始时,具有n节车厢的货车从入轨处进入转轨站;转轨结束时,各车厢从右到左按照编号1n的次序通过出轨处离开转轨站。 要求:给了算法分析与完整的算法程序。

10、题目9:栈的应用火车厢重排问题 假设一列货运列车共有n节编号分别为1n的车厢,在进站前这n节车厢并不是按其编号有序排列;现要求重新排列各车厢,使该列车在进入车站时,所有车厢从前到后按编号1n 的次序排列,以便各车厢能够停靠在与其编号一致的站点。 为了达到这样的效果,可以在一个转轨站里完成车厢的重排工作。在转轨站中有一个入轨,一个出轨和K个位于入轨与出轨间的缓冲铁轨。如下图所示。开始时,具有n节车厢的货车从入轨处进入转轨站;转轨结束时,各车厢从右到左按照编号1n的次序通过出轨处离开转轨站。 要求:给了算法分析与完整的算法程序。 题目10:二叉树非递归遍历算法集成 功能要求: 1界面友好,易与操作。可采用菜单或其它人机对话方式进行选择。 2实现各种二叉树的遍历。包括先序遍历、中序遍历、后序遍历、层次遍历的非递归算法。 3演示程序以人机对话的形式进行。每次测试完毕正确显示各种遍历序列。 在报告中要注明:存储结构、基本算法(可以使用程序流程图)、源程序、测试数据和结果、算法的时间复杂度、另外可以提出算法的改进方法。 题目11:哈夫曼编码及实现 问题描述参见课本. 题目12:二叉树线索化 实现以前序遍历的方式线索化二叉树。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 策划方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁