数据结构课程设计_111011-14.docVIP

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《数据结构》课程设计教学任务书 一、课程设计的目的 数据结构课程主要是研究非数值计算的程序设计问题中所出现的计算机操作对象以及它们之间的关系和操作的学科。数据结构是介于数学、计算机软件和计算机硬件之间的一门计算机专业的核心课程,它是计算机程序设计、数据库、操作系统、编译原理及人工智能等的重要基础,广泛的应用于信息学、系统工程等各种领域。 学习数据结构是为了将实际问题中涉及的对象在计算机中表示出来并对它们进行处理。通过课程设计可以提高学生的思维能力,促进学生的综合应用能力和专业素质的提高。通过此次课程设计主要达到以下目的: 了解并掌握数据结构的设计方法,具备初步的独立分析和设计能力; 初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能; 提高综合运用所学的理论知识和方法独立分析和解决问题的能力; 训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。 二、课程设计的基本要求 1. 独立思考,独立完成:课程设计中各任务的设计和调试要求独立完成,遇到问题可以讨论,但不可以拷贝。 2. 做好上机准备:每次上机前,要事先编制好准备调试的程序,认真想好调试步骤和有关环境的设置方法,准备好有关的文件。 3. 按照课程设计的具体要求建立功能模块,每个模块要求按照如下几个内容认真完成: a)需求分析: 在该部分中叙述,每个模块的功能要求 b)概要设计: 在此说明每个部分的算法设计说明(可以是描述算法的流程图),每个程序中使用的存储结构设计说明(如果指定存储结构请写出该存储结构的定义) c)详细设计: 各个算法实现的源程序,对每个题目要有相应的源程序(可以是一组程序,每个功能模块采用不同的函数实现) 源程序要按照写程序的规则来编写。要结构清晰,重点函数的重点变量,重点功能部分要加上清晰的程序注释 d)调试分析: 测试数据,测试输出的结果,时间复杂度分析,和每个模块设计和调试时存在问题的思考(问题是哪些,问题如何解决?),算法的改进设想 课程设计总结:(保存在word文档中)总结可以包括:课程设计过程的收获、遇到的问题、解决问题过程的思考、程序调试能力的思考、对数据结构这门课程的思考、在课程设计过程中对《数据结构》课程的认识等内容 4. 实现的结果必须进行检查和演示,程序源代码和程序的说明文件必须上交,作为考核内容的一部分。(上交时每人交一份,文件夹的取名规则为:“学号 姓名”,如五”。该文件夹下至少包括:“源代码”。由学习委员收集按规定时间统一上交,另外,要上交课程设计报告,要求手写。也由学习委员收集按规定时间统一上交,) 5. 课程设计报告,可以按照:问题描述,需求分析,概要设计,详细设计和调试分析的格式书写。详细设计部分不要附源代码,可以对重点函数及结构进行说明。 6. 报告提交 时间:第20周星期四或星期五检查,学习委员收集上交,迟交无成绩。 形式:课程设计报告。另外,根据最后的考试或答辩给出最终成绩。 三. 课程设计内容 1. 内部排序演示 问题描述 设计一个测试程序比较几种排序算法的关键字比较次数和移动次数以取得直观感受。 基本要求 (1)对起(冒)泡排序、直接插入排序、简单选择排序、快速排序、希尔排序、堆排序算法进行比较; (2)待排序的元素的关键字为整数。其中的数据要用伪随机产生程序产生(如10000个),至少用5组不同的输入数据做比较,再使用各种算法对其进行排序,记录其排序时间,再汇总比较; (3)演示程序以人机对话的形式进行。每次测试完毕显示各种比较指标值的列表,用条形图(星号表示)进行表示,以便比较各种排序的优劣。 测试数据 由随机数产生器生成 实现提示 主要工作是设法在已知算法中的适当位置插入对关键字的比较次数和移动次数的计数操作。程序还可以考虑几组数据的典型性,如:正序、逆序和不同程度的乱序。注意采用分块调试的方法。 选作内容 (1)对不同表长进行比较 (2)验证各算法的稳定性 2. 建通讯录 问题描述 设计散列表实现通讯录查找系统,使得平均查找长度不超过R,完成相应的建表和查表程序。 基本要求 (1)设每个记录有下列数据项:用户名、电话号码、地址; (2)从键盘输入各记录,分别以姓名为关键字建立散列表; (3)假设人名为中国人姓名的汉语拼音形式。待填入哈希表的人名共有30个,取平均查找长度的上限为2; (4)哈希函数用除留余数法构造,采用二次探测再散列法解决冲突; (5)查找并显示给定电话号码的记录; (6)通讯录信息保存。 测试数据 取周围熟悉的30个人的姓名及相关信息。 实现提示 人名长度均不超过19个字符,字

文档评论(0)

精品资源 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档