其他分享
首页 > 其他分享> > 直接插入排序

直接插入排序

作者:互联网

直接插入排序是最简单的排序方法,它的基本操作是将一个记录插入到以排序好的有序表中,从而得到一个新的记录数增一的有序表。

* 空间复杂度O(1)

* 时间复杂度O(n²)

void InsertSort(int A[], int n){
    int i,j,temp; //定义变量
    for(i=1; i<n; i++){
        if(A[i]<A[i-1]){
            temp=A[i]; //临时存储
            for(j-i-1;j>=0 && A[j]>temp; --j)
                A[j+1]=A[j];
            A[j+1]=temp;
        }
    }
}
void InsertSort(int A[], int n){
    int i,j;
    for(i=2; i<=n; i++){
        if(A[i]<A[i-1]){
            A[0] = A[i]; //游标记录
            for(j=i-1; A[0]<A[j]; --j)
                A[j+1] = A[j];
            A[j+1] = A[0];
        }
    }
}

 

标签:temp,int,插入排序,InsertSort,void,直接,复杂度
来源: https://www.cnblogs.com/jake-jin/p/15861826.html