希爾排序以直接插入排序?yàn)榛A(chǔ),,對(duì)以增量序列做標(biāo)記的分組進(jìn)行插入排序,。增量序列從長度/2開始到1(典型的增量序列),。代碼如下: private static void shellSort(int[] arr) { int j; int len = arr.length; for(int val=len>>1; val>0; val>>=1) { for(int i=val; i<len; i++) { int temp = arr[i]; for(j=i; j>=val&&temp<arr[j-val]; j-=val) { arr[j] = arr[j-val]; } arr[j] = temp; } } } |
|