package org.SORT;
public class shellSort {
public static void main(String[] args) {
int a[] = {2,4,1,6,78,43,11,57,-2,33,21,58,99,123,53,643,77,40,333,78,8,17};
for(int i=0; i<a.length; i++ )
System.out.print(" "+a[i]);
shellSort(a);
System.out.println("\n"+"****************");
for(int i=0; i<a.length; i++ )
System.out.print(" "+a[i]);
}
public static void shellSort(int[] a) {
for( int gap=a.length/2; gap>0; gap = gap==2 ? 1:(int)(gap / 2.2) ){
for(int i=1; i<a.length; i++){
int temp = a[i];
int j = i;
for( ; j>=gap && a[j]<a[j-gap]; j-=gap){
a[j] = a[j-gap];
a[j-gap] = temp;
}
//a[j] = temp;
}
}
}
}
排序算法之谢尔排序
最新推荐文章于 2020-10-12 18:52:30 发布