您的位置:首页 > 其它

直接插入排序

2017-09-03 14:50 204 查看
//时间复杂度: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");
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  排序