设为首 页  加入收藏  联系我们    
您当前的位置:辅导计算机软件程序 毕业设计 程序代码 代写做软件程序毕设 免费开发资料 -> VC毕业设计 -> 毕设信息 退出登录 用户管理
(毕业设计学习资料) 排序算法比较研究-600-源码+说明资料   售价 800点   
下载不到演示请与客服沟通! 成品均可以先测试,再购买,若代码有疑问提供辅导讲解!


查看免费获取方法

免费获取计算机毕业设计-只需要以下几步
1.选择中意的项目
2.会员管理中心替换作品或联系客服获取点数
3.定做服务请直接联系客服咨询

项目成品,看好就买,报价点数没有其他任何服务
(其他服务需要另算) 另提供:计算机程序源码修改,
定做
, 辅导讲解代码,
程序核心分析,网站制作项目定制,项目流程建议
分析讲解系统流程. 辅导代码, 算法分析,
数据库设计等计算机编程相关服务
 
 

客服联系方式:jjwebCoder@163.Com
63353282
直接点击留言
(86) 0411-84062008

    热门下载
· 自适应智能聊天程序语境聊天智能..
· javawebgis城市车辆轨迹可视化系..
· C#串口通信北斗导航定位 NMEA018..
· java webgis 中国大陆油田数据信..
· asp.net铁路车辆段车辆信息管理系..
· asp.netC#微信小程序小学生作业系..
· Android幼儿园教学活动家教互动-..
· java(实际使用排考系统)大学固定..
· java门禁释放座位自习室图书馆座..
· vb语料库 文本文件关键字查询-18..
· java webgis 某油田数字岩心信息..
· rfid vue springboot 公交车辆管..
· asp.net某岩心库数字岩心信息管理..
· java webgis中国茶叶信息系统分布..
· webgis 动物园游乐场参观系统百度..
· 网页web端EXE端websocket通讯手机..
· VUE购物车联动示例 表格行组件方..
· webgis 城市信息旅游分析查询管理..
· java学院顶岗实习信息管理系统-1..
· java班主任事务班级事务管理系统..
· java疫情防控居家观察智能化 温度..
· 微信小程序社区志愿者服务管理小..
· Android的宠物寄养 宠物日志图片..
· 普通话辅助学习 答卷 错题收集 自..
· android 中学家校互动学生成绩 学..
· java 4S店汽车售后服务 预约回访..
整理时间 2008/12/29 16:37:23
毕设大小 31 KB
  
视频地址链接:

[收 藏]
下载统计
ASP毕业设计 | VB毕业设计 | JSP毕业设计 | VC毕业设计 | 文献参考 | C#毕业设计 | vb.net毕业设计
Delphi毕业设计 | Asp.NET毕业设计 | 技术经验 | VBA (Access) 毕业设计 | VBA (Excel) 毕业设计 | PB毕业设计 | android(安卓)毕业设计
Nodejs ES6前端全栈 vue react 小程序 express koa2 mern | python(web开发Django框架) | html5游戏开发 | Jquery毕业设计 | XSLT毕业设计

∷毕设简介∷

提供 系统开发过程,业务需求分析,流程分析,系统数据库表结构,数据字典,免费提供您参考阅读!请下载演示参考系程序细节!
更多请下载演示查看
一、         排序算法比较研究(基本题目)
【问题描述】在教科书中,各种排序算法的时间复杂度分析结果只给出了算法执行时间的渐进度,或者大概执行时间。试通过随机数据比较算法的关键字比较次数和关键字移动次数,以取得直观的感受。
【基本要求】(1)对各种内部排序算法进行比较,包括(书中没有提到请自行查阅课外资料):冒泡排序,插入排序,选择排序,计数排序,快速排序,归并排序,希尔排序,基数排序,堆排序。
           (2)待排序表的表长不小于100;其中数据要用伪随机数产生程序产生;至少要用5组不同的输入数据作比较;比较的指标有关键字参加的比较次数和关键字的移动次数。(关键字交换计为3次移动)
           (3)最后要对结果作出简单的分析,包括对各组数据得出结果波动大小的解释。
【实现提示】主要工作是设法在已知算法中的适当位置插入对关键字的比较次数和移动次数的计数操作。程序还可以考虑几组数据的典型性,如:正序,逆序和不同程度的乱序。注意采用分块调试的方法。
 
 

一、需求分析
  对各种内部排序算法进行比较,包括(书中没有提到请自行查阅课外资料):冒泡排序,插入排序,选择排序,计数排序,快速排序,归并排序,希尔排序,基数排序,堆排序。
   待排序表的表长不小于100;其中数据要用伪随机数产生程序产生;至少要用5组不同的输入数据作比较;比较的指标有关键字参加的比较次数和关键字的移动次数。(关键字交换计为3次移动)
最后要对结果作出简单的分析,包括对各组数据得出结果波动大小的解释。
1. 冒泡排序:依次比较相邻的两个数,将大数放在前面,小数放在后面。即首先比较第1个和第2个数,将大数放前,小数放后。然后比较第2个数和第3个数,将大数放前,小数放后,如此继续,直至比较最后两个数,将大数放前,小数放后,此时第一趟结束,在最后的数必是所有数中的最小数。重复以上过程,仍从第一对数开始比较(因为可能由于第2个数和第3个数的交换,使得第1个数不再大于第2个数),将大数放前,小数放后,一直比较到最小数前的一对相邻数,将大数放前,小数放后,第二趟结束,在倒数第二个数中得到一个新的最小数。如此下去,直至最终完成排序。
2. 插入算法:有一个已经有序的数据序列,要求在这个已经排好的数据序列中插入一个数,但要求插入后此数据序列仍然有序,这个时候就要用到一种新的排序方法——插入排序法,插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据,算法适用于少量数据的排序,时间复杂度为⊙(㎡)。是稳定的排序方法。插入算法(insertion sort)把要排序的数组分成两部分:第一部分包含了这个数组的所有元素,但将最后一个元素除外,而第二部分就只包含这一个元素。在第一部分排序后,再把这个最后元素插入到此刻已是有序的第一部分里的正确位置中。
3. 选择排序:每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。  选择排序是不稳定的排序方法。  n个记录的文件的直接选择排序可经过n-1趟直接选择排序得到有序结果:  ①初始状态:无序区为R[1..n],有序区为空。  ②第1趟排序  在无序区R[1..n]中选出关键字最小的记录R[k],将它与无序区的第1个记录R[1]交换,使R[1..1]和R[2..n]分别变为记录个数增加1个的新有序区和记录个数减少1个的新无序区。  ……  ③第i趟排序  第i趟排序开始时,当前有序区和无序区分别为R[1..i-1]和R(1≤i≤n-1)。该趟排序从当前无序区中选出关键字最小的记录 R[k],将它与无序区的第1个记录R交换,使R[1..i]和R分别变为记录个数增加1个的新有序区和记录个数减少1个的新无序区。  这样,n个记录的文件的直接选择排序可经过n-1趟直接选择排序得到有序结果。
4. 计数排序:利用元素的实际值来确定它们在输出数组中的位置。因此,计数排序算法不是一个基于比较的排序算法,从而它的计算时间下界不再是Ω(nlogn)。另一方面,计数排序算法之所以能取得线性计算时间的上界是因为对元素的取值范围作了一定限制,即k=O(n)。如果k=n2,n3,..,就得不到线性时间的上界。此外,我们还看到,由于算法第4行使用了downto语句,经计数排序,输出序列中值相同的元素之间的相对次序与他们在输入序列中的相对次序相同,换句话说,计数排序算法是一个稳定的排序算法。
5. 快速排序(Quick Sort)是一种有效的排序算法。虽然算法在最坏的情况下运行时间为O(n^2),但由于平均运行时间为O(nlogn),并且在内存使用、程序实现复杂性上表现优秀,尤其是对快速排序算法进行随机化的可能,使得快速排序在一般情况下是最实用的排序方法之一。  快速排序被认为是当前最优秀的内部排序方法。
6. 归并排序:是稳定的排序.即相等的元素的顺序不会改变.如输入记录 1(1) 3(2) 2(3) 2(4) 5(5) (括号中是记录的关键字)时输出的 1(1) 2(3) 2(4) 3(2) 5(5) 中的2 和 2 是按输入的顺序.这对要排序数据包含多个信息而要按其中的某一个信息排序,要求其它信息尽量按输入的顺序排列时很重要.这也是它比快速排序优势的地方.
7. 希尔排序:先取一个小于n的整数d1作为第一个增量,把文件的全部记录分成d1个组。所有距离为dl的倍数的记录放在同一个组中。先在各组内进行直接插入排序;然后,取第二个增量d2<d1重复上述的分组和排序,直至所取的增量dt=1(dt<dt-l<…<d2<d1),即所有记录放在同一组中进行直接插入排序为止。
8. 基数排序:则是属于“分配式排序”(distribution sort),基数排序法又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分配至某些“桶”中,藉以达到排序的作用,基数排序法是属于稳定性的排序,其时间复杂度为O (nlog(r)m),其中r为所采取的基数,而m为堆数,在某些时候,基数排序法的效率高于其它的比较性排序法。
9. 堆排序:是一树形选择排序。堆排序的特点是:在排序过程中,将R[l..n]看成是一棵完全二叉树的顺序存储结构,利用完全二叉树中双亲结点和孩子结点之间的内在关系(参见二叉树的顺序存储结构),在当前无序区中选择关键字最大(或最小)的记录。


无法找到演示,请联系客服  点击联系客服
输入题目信息关键字,查询更多(注:'考试'可查'考')
∷下载地址∷ ∷相关毕设∷

无需注册 演示程序直接下载
下载地址一
· vue全栈外卖订餐升级加入评分 平..
· NET网上预约挂号就诊排序(预约时..
· NET网上预约挂号就诊排序(预约时..
· 图书阅读借阅(关键字检索/算法推..
· VC多线程排序系统演示-717-源码+..
∷下载说明∷
如果您发现该软件不能下载,请点击报告错误谢谢!
站内提供的极少部分源码,文献均是由网上搜集,若侵犯了你的版权利益,敬请来信通知我们!
本站提供算法,数据构架,编程语言基础知识的辅导讲解,尽心尽力为所有客户提供最好的服务!
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 管理登录
Copyright ©2024 3Q2008.Com 网络
 

定做服务操作流程 主站   关于我们   联系程序员   企业建站 

辽ICP备2024022997号-1
 业务(企业网站制作,系统制作,毕业设计资料辅导,系统开发 ,项目定制,辅导讲解,算法分析)
联系方式:jjwebCoder@QQ.Com    QQ:63353282    Tel:(86) 0411-84062008
Copyrights ©3Q2008.Com 网站制作 3Q2008网络
网站制作,系统开发 记得http://www.3Q2008.Com http://www.QY2S.Com http://www.99wk.Com
首页 |  定制流程 |  检索数据 |  联系我们 | 关于本站 |  Top △