欢迎来到建筑考试题库网 建筑考试题库官网
全部科目 > 大学试题答案(课后习题答案)

未知题型

[Shell排序增量试验]使用不同的增量来研究Shell排序算法,并与下列“增量除以2”的排序函数比较。请特别试一下“增量除以3”的方法,该方法对长度为n的序列以n/3,n/9…为增量。 void shellsort(Sortobject*pvector){ /*Shell sort*/ int incr,start; for (incr=pvector->n/2;incr>0;incr/=2) /*for each increment*/ for(start=0;start<incr;start++) /*Sort each sublist*/ inssort2(pvector,start,incr); } /*Modified version of Insertion Sort for varying increments*/ void insson2(SortObject*pvector,int start,int incr){ int i,j; RecordNode temp; for(i=start+incr;i<pvector->n;i+=incr){ temp=pvector->record[i]; for(j=i;(j>=incr)&&(temp.key<pvector->record[j-incr].key);j-=incr) pvector->record[j]=pvector->record[j-incr]; pvector->record[j]=temp; } }

    A.key<pvector->record[j-incr].key);j-=incr)
【参考答案】

(1)增量除以3的算法 void shellsort3(Sortobject*pvector){ /*Shell so......

(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)

点击查看答案

相关考题

微信小程序免费搜题
微信扫一扫,加关注免费搜题

微信扫一扫,加关注免费搜题