插入排序算法
程序员文章站
2022-05-12 17:48:26
插入排序算法
对于插入排序算法来说,它是一种比较排序的一种。以后的博文中我会陆续介绍其余的几种排序算法。
时间复杂度o(n^2),
空间复杂度o(1)
排序时间与输入有关:输入的元素个数;元素已排序...
插入排序算法
对于插入排序算法来说,它是一种比较排序的一种。以后的博文中我会陆续介绍其余的几种排序算法。
时间复杂度o(n^2),
空间复杂度
o(1)
排序时间与输入有关:输入的元素个数;元素已排序的程度。
最佳情况,输入数组是已经排好序的数组,运行时间是
n的线性函数;
最坏情况,输入数组是逆序,运行时间是
n的二次函数。
核心代码:
void insertionsort(int a[]){ int temp; for(int i = 1; i=0; j--){ if( a[j+1] < a[j] ){ temp = a[j+1]; a[j+1] = a[j]; a[j] = temp; } } } }