package Sort;
import java.util.Random;
/**
* 插入排序法
**/
public class insertSort {
//参数:要排序的数组、
public void insertSort(int[] a){
int insertNode;
int i,j,k;
for(i = 1; i < a.length; i++){
insertNode = a[i];
j = i - 1;
//寻找合适的空间来放置当前要排序的元素
while (j>=0 && insertNode < a[j]){
a[j + 1] = a[j];
j--;
}
a[j + 1] = insertNode;
System.out.println("正在排序中、、、、请稍后片刻 :");
//打印排序的情况、
for(k = 0; k < a.length; k++){
System.out.print(a[k] + " ");
}
System.out.println();
}
}
public static void main(String[] args) {
int a[] = new int[10000];
Random ran = new Random();
for(int i=0;i<9999;i++){
a[i] = ran.nextInt(10000);
if(i % 100==0)
System.out.println("");
System.out.print(a[i] + " ");
}
long starttime = System.currentTimeMillis();
insertSort is =new insertSort();
is.insertSort(a);
long endtime = System.currentTimeMillis();
System.out.println("排序共花费"+(endtime-starttime)+"毫秒");
}
}
import java.util.Random;
/**
* 插入排序法
**/
public class insertSort {
//参数:要排序的数组、
public void insertSort(int[] a){
int insertNode;
int i,j,k;
for(i = 1; i < a.length; i++){
insertNode = a[i];
j = i - 1;
//寻找合适的空间来放置当前要排序的元素
while (j>=0 && insertNode < a[j]){
a[j + 1] = a[j];
j--;
}
a[j + 1] = insertNode;
System.out.println("正在排序中、、、、请稍后片刻 :");
//打印排序的情况、
for(k = 0; k < a.length; k++){
System.out.print(a[k] + " ");
}
System.out.println();
}
}
public static void main(String[] args) {
int a[] = new int[10000];
Random ran = new Random();
for(int i=0;i<9999;i++){
a[i] = ran.nextInt(10000);
if(i % 100==0)
System.out.println("");
System.out.print(a[i] + " ");
}
long starttime = System.currentTimeMillis();
insertSort is =new insertSort();
is.insertSort(a);
long endtime = System.currentTimeMillis();
System.out.println("排序共花费"+(endtime-starttime)+"毫秒");
}
}