- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
报告编号:第十二组
“数据结构”课程设计报告
排序算法性能比较软件
学生姓名:
指导教师: 陈少军
所 在 系: 电子工程系
所学专业: 计算机科学与技术
年 级: 11级计算机(2)班
2013 年 6 月 12 日
目录
第一章 需求分析 3
1.1 设计目的 3
1.2 设计目标 3
1.3 设计理念 3
第二章 概要分析 4
2.1 排序算法性能比较软件 4
2.2 排序算法性能比较软件工作原理 5
第三章 详细设计 6
3.1 各种排序思想 6
3.2 各种排序函数实现 7
第四章 系统测试 13
4.1 系统主界面显示 13
4.2 产生随机数据排序界面 14
4.3 自行输入数据排序界面 15
4.4 随机产生逆序数据排序界面 16
第五章 性能分析 17
第六章 使用说明 17
第七章 项目总结 18
参考文献: 19
第一章 需求分析
1.1 设计目的
设计排序算法性能比较软件,方便用户选择最快捷、方便的算法,已达到对数据的快速处理。
1.2 设计目标
(1)该排序算法性能比较软件实现了总共八种排序,分别是:冒泡排序、直接插入排序、希尔排序、简单选择排序、快速选择排序、归并排序、堆排序、基数排序。程序首先实现对输入的数据进行正排序,然后再分别实现八种排序的排序比较次数与交换次数。
(2)该排序算法性能比较软件还实现了对八种排序的最优比较,从比较次数和交换次数两个方面进行对这些排序算法的评估,从而实现用户对最优排序算法的快速选择。
1.3 设计理念
排序是计算机程序设计中的一种重要的操作,它的功能是将一组无序的数列重新排列成一个有序的数列,排序算法性能比较软件的设计与实现就是方便用户的需求,大大满足用户在进行数据排列时需要。
排序的方法有很多,但是就其全面性能而言,很难提出一种被认为是最好的方法,每一种方法都有各自的优缺点,适合在不同的环境下使用。此软件通过对冒泡排序、直接插入排序、希尔排序、简单选择排序、快速选择排序、归并排序、堆排序、基数排序这几种排序进行比较。能使我们更好的掌握这些排序的基本思想及排序算法。通过该课题的设计过程,可以加深理解各种数据结构的逻辑结构、存储结构及相应运算的实现,进一步理解和熟练掌握课本中所学的各种数据结构,学会如何把学到的知识用于解决实际问题,培养我们的动手能力。
第二章 概要分析
2.1 排序算法性能比较软件
排序算法性能比较设计主程序包括:冒泡排序、直接插入排序、希尔排序、简单选择排序、快速选择排序、归并排序、堆排序、基数排序。如图2.1所示:
图2.1 排序算法性能比较软件
2.2 排序算法性能比较软件工作原理
排序算法性能比较软件输入无序数列,然后使用八种排序进行比较次数和交换次数的计算,从而得出用户理想下的最优排序算法。如图2.2所示:
图2.2 排序算法性能比较软件工作原理
第三章 详细设计
3.1 各种排序思想
冒泡排序:
这种排序的比较基本思想就是两两比较待排序的数据元素的大小,发现两个数据元素的次序相反时候,就进行交换,直到没有反序的数据为止。冒泡排序是一次的比较找出最小、最大值,然后将其放置序列的最后一个位置,再将剩下的从第一个位置开始至n-i的位置进行重复的操作。
直接插入排序:
该排序是以第n个数(需排序的数)直接与数组里已经排序的数做比较。将其插入比它大的数之前,比他小的数之后。
希尔排序:
先把数组分成等长的两个数组,用r[i]与r[n/2+i]做比较,小的在前、大的在后,然后再把两两一组的两组做比较。就这样,每次比较,每组数的个数都是上一次的两倍,最后完成整个数组的排序。
快速选择排序:
该排序是在现有的无序数组中找最值,然后作为第一个元素,之后就是每次找最值,作为下一个元素,直至最后一个元素,排序完成。
快速排序:
定义两个指针,分别指向第一个与最后一个元素,这两个元素做比较,大的放前、小的放后,然后移动指针,进行下一个比较。两次这样比较排序以后,数组变成了有序数列,该算法采用为递归算法。
归并排序:
该排序,也是需要调用递归。先把数组对半分多次,直到每组只有两个数据时。进行对比、排序。然后再两两合并,最后做到整个数组的排序完成。
堆排序:
先是对堆做比较,左子树小于本树,右子树大于本树,然后不停比较、交换,最后达到整个数组的排序。
基数排序:
基数排序法又称“桶子法”,顾名思义,它是透
您可能关注的文档
最近下载
- 企业内控应用手册之信息系统风险控制矩阵.pdf VIP
- 复合场例题与习题(含答案).doc VIP
- 2024年昆明市官渡区国有资产投资经营有限公司人员招聘笔试备考题库及答案解析.docx VIP
- 2025年四川广安市广安区白市镇人民政府选用片区纪检监督员1人备考题库及答案解析.docx VIP
- 2025四川广安市广安区花桥镇人民政府选用片区纪检监督员1人考试备考题库及答案解析.docx VIP
- 汇川PN伺服Epos使用(FB_Servo_111)使用方法详解_带程序_V2.pdf VIP
- 地基GPS遥感大气可降水量:原理、方法与气象应用的深度剖析.docx VIP
- 云南昆明市官渡区国有资产投资经营有限公司招聘笔试题库2023.pdf VIP
- 某某某公司特变电工股份有限公司廉政手册.doc VIP
- 《城市热岛效应》.ppt VIP
文档评论(0)