欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2022年分治法实现归并排序算法算法设计与分析实验报告 .pdf

    • 资源ID:40147488       资源大小:160.93KB        全文页数:8页
    • 资源格式: PDF        下载积分:4.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要4.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2022年分治法实现归并排序算法算法设计与分析实验报告 .pdf

    算法设计与分析实验报告实验名称分治法实现归并排序算法评分实验日期年月日指导教师姓名专业班级学号一.实验要求1.了解用分治法求解的问题:当要求解一个输入规模为n,且 n的取值相当大的问题时,如果问题可以分成k个不同子集合,得到k个不同的可独立求解的子问题,其中1kn,而且子问题与原问题性质相同,原问题的解可由这些子问题的解合并得出。那末,对于这类问题分治法是十分有效的。2.掌握分治法的一般控制流程。DanC(p,q)global n,A1:n;integer m,p,q;/1p q n if Small(p,q)then return G(p,q);else m=Divide(p,q);/pmq return Combine(DanC(p,m),DanC(m+1,q);endif end DanC 3实现典型的分治算法的编程与上机实验,验证算法的时间复杂性函数。二.实验内容1.编程实现归并排序算法,程序中加入比较次数的计数功能,输出排序结果和比较次数。2.输入 10组相同的数据,验证排序结果和完成排序的比较次数。3.与复杂性函数所计算的比较次数比较。4.用表格列出比较结果。5.给出文字分析。三.程序算法1.归并排序算法procedure MERGESORT(low,high)/A(low;high)是一个全程数组,它含有high-low+10个待排序的元素/integer low,high;if lowmid then for kj to high do /处理剩余的元素/B(i)A(k);i i+1 repeat else for kh to mid do B(i)A(k);i i+1 repeat endif 将已归并的集合复制到A end MERGE 2.快速排序算法QuickSort(p,q)/将数组 A1:n 中的元素 Ap,Ap+1,Aq按不降次序排列,并假定 An+1 是一个确定的、且大于 A1:n中所有的数。/int p,q;global n,A1:n;if pq then j=Partition(p,q+1);/划分后 j 成为划分元素的位置名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 8 页 -QuickSort(p,j-1);QuickSort(j+1,q);endif end QuickSort procedure PARTITION(m,p)/退出过程时,p带着划分元素所在的下标位置。/integer m,p,i;global A(m:p-1)vA(m);i m /A(m)是划分元素/loop loop ii+1 until A(i)v repeat /i由左向右移/loop pp-1 until A(p)v repeat /p由右向左移/if ip then call INTERCHANGE(A(i),A(p)/A(i)和A(p)换位/else exit endif repeat A(m)A(p);A(p)v /划分元素在位置p/End PARTITION四.程序代码1.归并排序#include#include#include#include#define M 11 typedef int KeyType;typedef int ElemType;struct rec KeyType key;ElemType data;typedef rec sqlistM;class guibing public:guibing(sqlist b)for(int i=0;iM;i+)ri=bi;名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 8 页 -void output(sqlist r,int n)for(int i=0;in;i+)coutsetw(4)ri.key;coutendl;void xuanze(sqlist b,int m,int n)int i,j,k;for(i=m;in-1;i+)k=i;for(j=i;jbj.key)k=j;if(k!=i)rec temp=bk;bk=bi;bi=temp;void merge(int l,int m,int h,sqlist r2)xuanze(r,l,m);xuanze(r,m,h);output(r,M);int i,j,k;k=i=l;for(j=m;im&jh;k+)if(ri.key=rj.key)r2k=ri;i+;else 名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 8 页 -r2k=rj;j+;output(r2,M);while(jh)r2k=rj;j+;k+;while(i=m)r2k=ri;i+;k+;output(r2,M);private:sqlist r;void main()coutguibingfa1运行结果:n;sqlist a,b;int i,j=0,k=M/2,n=M;srand(time(0);for(i=0;iM;i+)ai.key=rand()%80;bi.key=0;guibing gx(a);cout 排序前数组:n;gx.output(a,M);cout 数组排序过程演示:n;gx.merge(j,k,n,b);名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 8 页 -cout 排序后数组:n;gx.output(b,M);cin.get();2.快速排序#include#include#include#include#define MAXI 10 typedef int KeyType;typedef int ElemType;struct rec KeyType key;ElemType data;typedef rec sqlistMAXI;class kuaisu public:kuaisu(sqlist a,int m):n(m)for(int i=0;in;i+)bi=ai;void quicksort(int s,int t)int i;if(st)i=part(s,t);quicksort(s,i-1);quicksort(i+1,t);else return;int part(int s,int t)int i,j;rec p;名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 8 页 -i=s;j=t;p=bs;while(ij)while(i=p.key)j-;bi=bj;while(ij&bi.key=p.key)i+;bj=bi;bi=p;output();return i;void output()for(int i=0;in;i+)coutsetw(4)bi.key;coutendl;private:sqlist b;int n;void main()coutkuaisu1.cpp运行结果:n;sqlist a1;int i,n=MAXI,low=0,high=9;srand(time(0);for(i=0;in;i+)a1i.key=rand()%80;kuaisu px(a1,n);cout 数组排序过程演示:n;px.quicksort(low,high);cout 排序后数组:n;px.output();cin.get();名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 8 页 -五.程序调试中的问题相同数字在比较的过程中会使用很多的时间,不能提高排序的速度六.实验结果1.归并排序2.快速排序名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 8 页 -

    注意事项

    本文(2022年分治法实现归并排序算法算法设计与分析实验报告 .pdf)为本站会员(C****o)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开