下面是进行快速排序的一次划分的算法,请填补合适的内容。void Exchange(int s[], int i, int j) {int temp =s[i]; s[i]=s[j];;}int Partition(int seq[], int low, int high) {int pivotpos=low, pivot=seq[low], i;for(i=low+1; i<=high; i++)if(){pivotpos++;if(pivotpos!=i) Exchange(seq, pivotpos, i);};return pivotpos;}
查看答案
已知关键字序列为:5,8,12,19,28,20,15,22是小顶堆,现在插入关键字3,则调整后得到的小顶堆为(数字之间用西文逗号分割)。
用希尔排序法对一个数据序列进行排序时,若第一趟排序结果为:9,1,4,13,7,8,20,23,15,则该趟排序用得增量d(1≤d≤5)的值可能为:。
在对n个数据进行二路归并排序中,整个排序过程的时间复杂度为。
下面为希尔排序算法的伪代码描述,请填空完成该算法。其中dk为每趟希尔排序所采用的增量。void ShellInsert(SqList &L,int dk) {for(i=dk+1;i<=L.length; ++i)if( L.elem[i]0&&;j-=dk)=L.elem[j];L.elem[j+dk]=;}}void ShellSort((SqList &L) {int dlta[3],t=3;for(i=0;i