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 ( );
}
}
插入排序
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.