一、思想
将数组分为已排序和未排序两部分,遍历未排序的部分,插入到已排序的数组中,最优O(n),最差O(n平方),接近排序好的最优。
二、代码实现
void insertSort(int* list,int len){ int k; for (int i = 1; i < len ; ++i) { int temp = list[i]; for (k = i; k > 0 && list[k]>temp; --k) { list[k] = list[k-1];//后移 } //插入合适的位置 list[k] = temp; } }