插入排序算法

插入排序算法就是通过将新加入的数与排好序的数组进行对比,从而找出合适的位置给新加入的数字。就好像是我们排队一样,先让一个人站队,然后让未站队的人与站队的人进行比较,从而找出未站队人的合适的位置,然后进行插入。插入算法实现的代码如下:

public static void InsertSort(int[] array){
        int key = 0;
        for(int i = 0;i<array.length;i++){
            key = array[i+1];
            while(i > -1){
                if(key < array[i]){
                    array[i+1] = array[i];
                    i--;
                }
                else
                {
                    break;
                }
            }
            array[++i] = key;
        }
    }

 插入排序时间复杂度O(n^2) 空间复杂度为O(1)。 

posted @ 2016-01-15 17:57  守、护  阅读(182)  评论(0编辑  收藏  举报