public class test3 {
public static void main(String [] args)
{
int [] insert = new int [10]; //初始数组
System.out.println("未排序数组 ");
for(int i=0; i<insert.length; i++)
{
insert[i] = (int) (Math.random()*100);
System.out.print(insert[i]+" ");
}
System.out.println("");
//
int len = insert.length/2;
int temp = 0;
int flag = 0;
while(true)
{
System.out.println("len "+len);
for(int j=0; j<insert.length-len; j++)
{
if(insert[j] > insert[j+len])
{
temp = insert[j];
insert[j] = insert[j+len];
insert[j+len] = temp;
}
}
if(len%2 == 0 )
{
len = len / 2;
}
else
{
if(len == 1 )
{
len = len / 2;
}
else
{
len = len/2 + 1;
}
}
if(len == 0)
{
break;
}
}
System.out.println("结果数组是");
for(int i=0; i<insert.length; i++)
{
System.out.print(insert[i]+" ");
}
}
}