原理


/*** 希尔排序*/public class HillSort {private static int[] array;HillSort(int[] array){this.array = array;}public void run(){int j;//第一层循环获取步长for(int gap = array.length/2; gap>0; gap/=2){for (int i = gap; i < array.length; i++) {int tmp = array[i];for (j = i; j >= gap && tmp < array[j - gap]; j -= gap) {array[j] = array[j - gap];}array[j] = tmp;}}}}
