数据结构课程设计---排序算法的实现.docVIP

数据结构课程设计---排序算法的实现.doc

  1. 1、本文档共16页,可阅读全部内容。
  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文档。上传文档
查看更多
该文档均来自互联网,如果侵犯了您的个人权益,请联系我们将立即删除!

课 程 设 计(论文) 课程名称 数据结构 题目名称 排序算法的实现 学生学部(系) 艺术设计与计算机 专业班级 10计算机1班 2011 年12月05日 广东工业大学华立学院 课程设计(论文)任务书 题目名称 排序算法的实现 学生学部(系) 艺术设计与计算机学部 专业班级 10计算机1班 姓 名 蔡晶晶 学 号 一、课程设计(论文)的内容 排序算法的实现 二、课程设计(论文)的要求与数据 (1)需求分析 (2)概要设计 (3)详细设计 (4)编程实现 (5)测试: 提供数个测试用例 (6)符合撰写规范设计的必要说明文档 三、课程设计(论文)应完成的工作 (1)根据要求完成课题; (2)程序书写符合规范,程序设计完善; (3)对程序进行初步的测试; (4)程序运行结果和过程的界面截图; (5)根据设计规范撰写报告并按时提交; (6)设计内容用A4纸打印并按要求装订。 四、课程设计(论文)进程安排 序号 设计(论文)各阶段内容 地点 起止日期 1 搜集资料 图书馆 12.05-12.10 2 需求分析 图书馆 12.10-12.14 3 概要设计 图书馆 12.14-5.17 4 详细设计 图书馆 12.17-12.20 5 程序实现 图书馆 12.20-12.29 6 系统测试、运行 机房 12.19-12.30 7 提交报告 12.30 五、应收集的资料及主要参考文献 [1] 朱战立.数据结构.北京:电子工业出版社,2010 [2] 吴伟民,严蔚敏. 数据结构(C语言版) .北京: 清华大学出版社,2009 发出任务书日期: 2011 年 12 月 12日 指导教师签名: 计划完成日期: 2011 年 12 月 30 日 教学单位责任人签章: 目录 1序言 1 1.1内容 1 1.2目的 1 2 需求分析 1 2.1需求分析 1 2.2 功能分析 2 3概要设计 2 4详细设计 3 5 程序实现 4 总结 8 参考文献 9 1序言 1.1内容 排序是对数据元素序列建立某种有序序列的过程。排序的方法有许多种,不同的排序方法特点不同。学习排序,主要有两点,一个是每种排序的算法思想,另一个是每种排序方法的性能特点。 1.2目的 通过学习排序算法,我们可以掌握各种排序的基本思想、掌握各种排序方法的算法实现、掌握各种排序方法的优劣分析及花费的时间计算、掌握各种排序方法所适应的不同场合等等。 2 需求分析 2.1需求分析 排序是对数据元素序列建立某种有序排列的过程。准确的说,排序是把一个数据元素序列整理成按关键字递增(或递减)排列的过程。所以说,排序在生活中随处可见,并且非常重要。 2.2 功能分析 3概要设计 【直接插入排序的基本思想】顺序的把待排序的数据元素按其关键字值的大小插入到已排序数据元素子集合的适当位置。子集合的数据元素个数从只有一个数据元素开始,逐次增大,当子集合大小最终和集合大小相同时排序完毕。 【直接选择排序的基本思想】从待排序的数据元素集合中选取关键字最小的数据元素并将它与原始数据元素集合中的第一个数据元素交换位置;然后从不包括第一个位置上数据元素的集合中选取关键字最小的数据元素,并将它与数据元素集合中的第二个数据元素交换位置;重复如此,直到数据元素集合中只剩一个数据元素为止。 【冒泡排序的基本思想】设数组a中存放了n个数据元素,循环进行n-1趟如下的排序过程:第一趟时,依次比较相邻两个数据元素a[i].key和a[i+1].key(i=0,1,2,···,n-2),若为逆序,即a[i].key[i+1].key,则交换两个数据元素,否则不交换,这样数值最大的数据元素将被放置在a[n-1]中;第二趟时,数据元素个数减1,即数据元素个数为n-1,操作方法和第一趟的类似,这样整个n个数据元素集合中数值次大的数据元素将被放置在a[n-2]中;当第n-1趟结束时,整个n个数据元素集合中次小的数据元素将被放置在a[1]中,a[0]中放置了最小的数据元素。 4详细设计 直接排序算法,在已经排好序的序列中查找待插入的元素的插入位置,并将待插入元素插入到有序列表的过程。 直接插入排序是由两层嵌套循环组成的。外层循环标识并决定待比较的数值。内层循环为待比较数值确定其最终位置。直接插入排序是将待比较的数值与它的前一个数值进行比较,所以外层循环是从第二个数值开始的。当前一数值比待比较数值大的情况下继续循环比较,直到找到比待比较数值小的并将待比较数值置入其后一位置,结束该次循环。值得

文档评论(0)

sanshengyuan + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档