算法导论习题

算法导论习题

ID:21247337

大小:125.00 KB

页数:15页

时间:2018-10-20

算法导论习题_第1页
算法导论习题_第2页
算法导论习题_第3页
算法导论习题_第4页
算法导论习题_第5页
资源描述:

《算法导论习题》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、2-1://在合并排序中对小数组采用插入排序#includevoidmain(){voidMERGE_SORT(inta[],intp,intr,intk);inta[12];//={3,0,1,10,9,5,4,12,7,8,2,6};intk=3,n=12;inti,j,s;inttmp=0;printf("请输入12个正整数:");for(i=0;i<12;i++)scanf("%d",&a[i]);for(i=0;i<=3;i++){for(j=i*3+1;j

2、3+3;j++){s=j;while(s>=i*3+1){if(a[s]

3、",a[i]);printf("");}voidMERGE_SORT(inta[],intp,intr,intk){voidMERGE(inta[],intp,intq,intr,intk);intq;if(p

4、i,j,s;int*L=newint[n1];int*R=newint[n2];for(i=0;in1-1)a[s]=R[j++];elseif(j>n2-1)a[s]=L[i++];elseif(L[i]

5、中查找逆序对#includevoidmain(){intcount_inversion(inta[],intp,intr);inta[5]={5,4,3,2,1};printf("数组的逆序对是%d个",count_inversion(a,0,4));}intmerge_inversion(inta[],intp,intq,intr){intn1=q-p+1;intn2=r-q;int*L=newint[n1];int*R=newint[n2];inti,j,k,v;for

6、(i=0;in1-1)a[k]=R[j++];elseif(j>n2-1)a[k]=L[i++];elseif(L[i]>R[j]){a[k]=R[j++];v+=n1-i;}elsea[k]=L[i++];}deleteL;deleteR;returnv;}intcount_inversion(inta[],intp,int

7、r){intv=0,q;if(pa[i-1])a[i-1]=key;while(i>1&&a[i/2-1]

8、1]){tmp=a[i/2-1],a[i/2-1]=a[i-1],a[i-1]=tmp;i=i/2;}}voidMAX_HEAP_INSERT(inta[],intkey,intheap_size){heap_size+=1;a[heap_size-1]=0;HEAP_INCREASE_KEY(a,heap_size,key);}voidBUILD_MAX_HEAP(inta[],intlengh){intheap_size=1;inti;for(i=2;i<=lengh;i++){MAX_HE

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。