标签:ext sys mil oid 排序 code http ati mic
希尔排序法基本思想
希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止
public class ShellSort {
public static void main(String[] args) {
shellSort(creat());
}
public static int[] creat() {
int[] arr = new int[10000000];
for (int i = 0; i < arr.length; i++) {
arr[i] = new Random().nextInt(500000);
}
return arr;
}
public static void shellSort(int [] arr){
long star=System.currentTimeMillis();
for (int step = arr.length; step >0 ; step/=2) {
for (int j = step; j <arr.length ; j++) {
int temp=arr[j];
int index=j;
while (index-step>=0&&temp<arr[index-step]){
arr[index]=arr[index-step];
index-=step;
}
arr[index]=temp;
}
}
long end=System.currentTimeMillis();
System.out.println(end-star);
}
}
标签:ext sys mil oid 排序 code http ati mic
原文地址:https://www.cnblogs.com/huangshen/p/13324451.html