问题描述
直接插入排序
代码
#include<stdio.h>
#define N 1001
void InsertSort(int a[],int n);
int main(void){
int n;
int a[N];
scanf("%d",&n);
for(int i=1;i<=n;i++){
scanf("%d",&a[i]);
}
InsertSort(a,n);
for(int i=1;i<=n;i++){
printf("%d ",a[i]);
}
printf("\n");
return 0;
}
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];
}
}
}