//时间复杂度:n^2,稳定
package shujujiegou;
public class InsertSort {
static final int SIZE=10;
static void insertsort(int a[]){
int i,j,t,h;
for(i=1;i<a.length;i++){
t=a[i];
j=i-1;
while(j>=0&&t<a[j]){
a[j+1]=a[j];
j--;
}
a[j+1]=t;
System.out.println("第"+i+"步的排序结果:");
for(h=0;h<a.length;h++){
System.out.print(" "+a[h]);
}
System.out.println("\n");
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] shuzu=new int[SIZE];
int i;
//初始化数组
for(i=0;i<SIZE;i++){
shuzu[i]=(int)(100+Math.random()*(100+1));
}
//排序前的数组
for(i=0;i<SIZE;i++){
System.out.print(shuzu[i]+"\t");
}
System.out.println();
insertsort(shuzu);
//排序后的数组
for(int j=0;j<SIZE;j++){
System.out.print(shuzu[j]+"\t");
}
}
}
直接插入排序
最新推荐文章于 2023-09-10 22:20:38 发布