物理结构:数组
希尔排序分析:
最优时间复杂度:O(n) 顺序的情况下
最坏时间复杂度:O(nlog^2n)
平均时间复杂度:根据增量不同而不同
最坏空间复杂度:O(n)
稳定性:不稳定
希尔排序函数:
int ShellSort(int a[],int length);
//希尔排序,缩小增量的插入排序 int ShellSort(int a[],int length) { int incre=0,i,j,tmp; while(incre<length)//构造增量规则 { incre=incre*2+1; } //插入排序 while(incre>0) { for(i=incre;i<length;i++) { j=i-incre; tmp=a[i]; while(j>=0&&a[j]>tmp) { a[j+incre]=a[j]; j=j-incre; } a[j+incre]=tmp; } incre=(incre-1)/2; } }
时间: 2024-10-29 19:07:11