package sort;
/*
* 插入排序
*
* 使用插入排序的前提是确定数据一部分是有序的,然后取出无序数据在有序数据中作比较,找到合适的位置
*/
public class insertionSort
{
private int [] array = { 11 , 22 , 3 , 66 , 44 , 55 , 33 } ;
public void sort ()
{
int i , j , temp ;
//首先先确定数组下标为2前面的数据是有序的
for ( i = 2 ; i < array.length ; i ++ )
{
//然后取出无序数据中的一个
temp = array [i] ;
//在有序数据中作比较,找到比他大的,将大的后移,为其腾出位置,如果找不到大的,说明当前temp值无需改动
for ( j = i -1 ; j >= 0 ; j--)
{
if ( array [j] > temp )
{
array [j+1] = array [j] ;
}
else
{
break ;
}
}
array [j+1] = temp ;
}
}
public void display ()
{
for ( int i = 0 ; i < array.length ; i++ )
{
System.out.print ( array [i] + " " );
}
System.out.println ( );
}
}
插入排序
最新推荐文章于 2018-01-22 19:29:58 发布