说明: 1、希尔排序算法 void shellsort(sqlist& l,int d) { d=l.length/2; while(d>0) { for(i=d+1;i<=l.length;++i) if(l.r[i].key0&&l.r[0].key<l.r[j].key;j-=d) l.r[j+d]=l.r[j]; l.r[j+d]=l.r[0];} d=d/2;} } 基本思想: 先取一个小于n的整数d1作为第一个增量,把文件的全部记录分成d1个组。所有距离为dl的倍数的记录
<kun41482718> 上传 | 大小:143kb