算法步骤:
1.从第一个元素开始,该元素可以认为已经被排序
2.取出下一个元素a,在已经排序的元素序列中从后向前扫描
3.如果已排序中的元素b大于a,则将元素b后移一个位置
4.重复步骤3,直到找到已排序的元素x小于或者等于元素a
5.将元素a插入到x的后面
6.重复步骤2~5
public static void insertionSort(Integer[] array){ for(int i=1;i<array.length;i++){ //待插入的数据 Integer toBeInsertedValue = array[i]; int j; for(j=i;j>0;j--){ if(array[j-1]>toBeInsertedValue){ //将比toBeInsertedValue大的元素全部后移 array[j]=array[j-1]; continue; } break; } //插入新元素 array[j]=toBeInsertedValue; } }