经典排序算法——插入排序

对于一个int数组,请编写一个插入排序算法,对数组元素排序。

给定一个int数组A及数组的大小n,请返回排序后的数组。

测试样例:
输入数组:[1,2,3,5,2,3],6
输出数组:[1,2,2,3,3,5]

class InsertionSort {
public:
    int* insertionSort(int* A, int n) {
        // write code here
        for(int i=1;i<n;++i)
        {
            int insertNum=A[i];//待插入元素
            int j=i;
            while(j>0 && A[j-1]>insertNum)//寻找插入位置
            {
                    A[j]=A[j-1];
                    j--;
            }
            A[j]=insertNum;
        }
        return A;
    }
};

经典排序算法——插入排序_第1张图片

你可能感兴趣的:(经典排序算法——插入排序)