简单插入排序 时间复杂度 O(n*n) 稳定的排序算法
逐一取出元素,在已排好的元素序列中从后向前扫描,插入到适当的位置
部分代码如下:
public static void insert_sort(int[] data)
{
int i= 0;
int j = 0;
int len = 0;
int tmp = 0; //局部变量
if (null == data) {
return;
}
len = data.length; //提高效率
for (i = 1; i < len; i++)
{
if (data[i-1] > data[i])
{
tmp = data[i];
j = i;
while ((j >0) && (data[j-1] > tmp))
{
data[j] = data[j-1];
j--;
}
data[j]=tmp;
}
}
}