77范文网 - 专业文章范例文档资料分享平台

实验报告实验四排序(4)

来源:网络收集 时间:2020-06-17 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

parray[j]=parray[0]; movetimes[5]+=3;

i=j; } }

/************************************************************归并排序*********************************************************************/ int Sort::MergeSort(long int parray[]) {

long int r1[Max+1]; int h(1);

j=2*i; //被筛结点位于原来结点j的位置 }

while (h

MergePass(parray, r1, h); //归并 h=2*h;

MergePass(r1, parray, h); h=2*h; } }

第16页

return 0;

void Sort::Merge(long int parray[], long int r1[], int s, int m, int t) //一次归并 { int i=s; int j=m+1; int k=s;

while (i<=m && j<=t) { comparetimes[6]++;

movetimes[6]++; if (parray[i]<=parray[j]) {

r1[k++]=parray[i++];

}

else

r1[k++]=parray[j++];

}

if (i<=m) while (i<=m) {

r1[k++]=parray[i++];

第17页

}

movetimes[6]++;

else }

void Sort::MergePass(long int parray[], long int r1[], int h) //一趟归并 {

int i(1),k;

while (j<=t) {

r1[k++]=parray[j++];

movetimes[6]++; }

while (i<=Max-2*h+1) {

Merge(parray, r1, i, i+h-1, i+2*h-1); i+=2*h; }

if (i

Merge(parray, r1, i, i+h-1, Max);

else for (k=i; k<=Max; k++) {

第18页

}

}

r1[k]=parray[k]; movetimes[6]++;

/************************************************************获取当前时间**********************************************************************/ long double Sort::GetNowTime(void) {

LARGE_INTEGER litmp;

LONG64 QPart;

QueryPerformanceCounter(&litmp); }

/**************************************************************打印数组************************************************************************/ void Sort::PrintArray(long int *pRandom) { }

第19页

QPart=litmp.QuadPart; return (long double)QPart;

for(int j=1;j<=Max;j++) cout<

/************************************************************数组置零函数***********************************************************************/ void Sort::SetTimesZero() { }

void Sort::RecordTimes(int j) { }

/************************************************************输出排序数据***********************************************************************/ void Sort::PrintStatistics(char* funcname[]) {

int i(0),j(0);

cout<<\ 排序方法\\t\乱序耗时(μs) \顺序耗时(μs) \逆序耗时(μfor(int i=0;i<7;i++) { }

timestable[i][j]=movetimes[i]; timestable[i][j+1]=comparetimes[i]; memset(comparetimes,0,sizeof(int)*7); memset(movetimes,0,sizeof(int)*7);

s)\

for(i=0;i<7;i++)

第20页

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库实验报告实验四排序(4)在线全文阅读。

实验报告实验四排序(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/1105916.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: