今天在淘宝上买的《算法导论》拿到了,晚自习看了前两章,
回来实现以下基本的插入排序,最坏情况下的时间复杂度T(n)=O(n2)。
code:
#include<stdio.h>
//插入排序
void insertionsort(int a[],int n){
int i,j,key;
for( j = 1;j < n;j++){
key = a[j];
i = j-1;
while( i >= 0 && a[i]>key){
a[i+1]=a[i];
i -= 1;
}
a[i+1]=key;
}
}
int main(){
int a[]={5,2,4,6,1,3};
insertionsort(a,6);
for( int i = 0;i < 6;i++){
printf("%d\n",a[i]);
}
return 0;
}