插入排序

算法步骤:
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;
        }
    }
posted @ 2015-02-09 20:06  风过无痕的博客  阅读(209)  评论(0编辑  收藏  举报