Loading

3.2 插入排序思路和java实现

插入排序

1.理论基础

它的一个特点是:回溯到前面进行比较,之后往后进行比较。

图示如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-768G3tX6-1678499867688)(insert.png "插入排序图示")]

2.代码实现

注意:插入排序只适合少量元素的排序,其时间复杂度为O(n^2)

class Test{
    void InsertionSort(int a[],int n){
        int temp;
        int j;
        for(int i=1;i<array.length;i++){
            temp = array[i];
            for(j=i;j>0&&array[j-1]>temp;j--){
                array[j] = array[j-1];
            }
            array[j] = temp;
        }
    }
}

空间复杂度为O(1)
这个排序方法了解即可,因为其时间复杂度非常高。

posted @ 2020-03-18 11:04  文牧之  阅读(11)  评论(0)    收藏  举报  来源