/**
*插入排序思路:O(n^2)
* 最外层一个循环,从第二个数到最后一个,变量为i
* 每个数存储在key变量中
* 变量j,是左边已经排好序的数组的上限
* 判断key与前面每一个数比较 1,3,5,2,4,6,8,5,9,10
* 《-------
* 如果key小于前一个并且已经排好序的数组没有越界
* 调换两个数
* j向左移
*
* 把key放在指定位置 j+1
*
*/
public class InsertSort
{
public static void insertSort(int[] resouceArr)
{
for(int i = 1 ; i < resouceArr.length ; i++ )
{
int key = resouceArr[i] ;
int j = i - 1 ;
while( j > 0 && resouceArr[j] > key)
{
resouceArr[j+1] = resouceArr[j] ;
j = j - 1 ;
}
resouceArr[j+1] = key ;
}
}
}
插入排序
最新推荐文章于 2024-09-28 15:39:21 发布