数据结构排序算法实现与性能比较实验.pdfVIP

数据结构排序算法实现与性能比较实验.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

实验4

实验题目:排序

实验目的:

掌握各种排序方法的基本思想、排序过程、算法实现,能进行时间和空间性能的分析,

根据实际问题的特点和要求选择合适的排序方法。

实验要求:

实现直接排序、冒泡、直接选择、快速、堆、归并排序算法。比较各种算法的运行速度。

实验主要步骤:

实验代码

#includestdio.h

#includestdlib.h

#defineMax100//假设文件长度

typedefstruct{//定义记录类型

intkey;//关键字项

}RecType;

typedefRecTypeSeqList[Max+1];//SeqList为顺序表,表中第0个元素作为哨兵

intn;//顺序表实际的长度

//直接排序法

voidInsertSort(SeqListR)

{//对顺序表R中的记录R[1‥n]按递增序进行排序

inti,j;

for(i=2;i=n;i++)//依次R[2],……,R[n]

if(R[i].keyR[i-1].key){//若R[i].key大于等于有序区中所有的keys,则R[i]

留在原位

R[0]=R[i];j=i-1;//R[0]是R[i]的副本

do

{//从右向左在有序区R[1‥i-1]中查找R[i]的位置

R[j+1]=R[j];//将关键字大于R[i].key的记录后移

j--;

}

while(R[0].keyR[j].key);//当R[i].key≥R[j].key是终止

R[j+1]=R[0];//R[i]到正确的位置上

}//endif

}

//冒泡排序

实验4

实验题目:排序

实验目的:

掌握各种排序方法的基本思想、排序过程、算法实现,能够进行时间和空间性能的分析,根

据实际问题的特点并要求选择合适的排序方法。

实验要求:

实现直接排序、冒泡、直接选择、快速、堆、归并排序算法。比较各种算法的运行速度。实现直接排序、冒泡、直接选择、快速、堆、归

并排序算法。比较各种算法的运行速度。

实验主要步骤:

实验代码

#includestdio.h#includestdlib.h#definemax100//假设文件长度

TypefStruct{//定义记录类型intkey;//关键字项}rectype;TypeefRectype

Seqlist[Max+1];//seqlist为顺序表,表中第0个元素作为哨兵int;//顺序表实

际长度

//{voidinsertsort(seqlistr){//对顺序表r中的记录r[1..n]按递

增顺序进行排序inti,j;for(in=2;i=n;i++)///依次r[2],,r[n]if(r[

i].Keyr{v14{v14R[I].Key大于等于小区区中所有的Keys,则r[in]}r[0]=r[i

];j=i‑1;//r[0]是r[in]的副本do{//从右向左在小区区r[1..i‑1]中查找r[i]的位

置r[j+1]=j[1j//关键字将大于r[in].Key

文档评论(0)

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

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

1亿VIP精品文档

相关文档