对于给定的一组记录,初始时假设第一个记录自成一个有序序列,其余记录为无序序列。接着从第二个记录开始,按照记录的大小依次将当前处理的记录插入到其之前的有序序列中,直至最后一个记录插入到有序序列中为止。
public static void InsertSort(int []a){
if(a != null){
for(int i = 1;i<a.length;i++){
int temp = a[i],j =i;
if(a[j-1] > temp)
while(j >=1 && a[j-1] > temp){
a[j] = a[j-1];
j--;
}
}
}
}