把数组分为两部分,一部分为有序列表,一部分为无序列表,第一个元素作为有序列表的元素,剩余部分作为无序列表的元素,每次取无序列表的第一个元素有序插入到有序列表中,最后,有序列表就是排好序的数组。

例:

public int[] sort(int[] numbers) {
        int temp;
        int j;
        for (int i = 1; i < numbers.length; i++) {
            temp = numbers[i];
            for (j = i; j > 0 && temp < numbers[j - 1]; j--) {
                numbers[j] = numbers[j - 1];
            }
            numbers[j] = temp;
        }
        return numbers;
    }

 

posted on 2018-09-17 14:53  柳无情  阅读(84)  评论(0编辑  收藏  举报