1.插入排序
#include<stdio.h>
int main(int argc, const char *argv[])
{
int arr[]={85,98,22,25,56,74};
int n=sizeof(arr)/sizeof(arr[0]);
int k,i=0,j=0;
for(i=1;i<n;i++){
k=arr[i];
for(j=i-1;arr[j]>k&&j>=0;j--){
arr[j+1]=arr[j];
}
arr[j+1]=k;
}
for(int i=0;i<n;i++){
printf("%d ",arr[i]);
}
putchar(10);
return 0;
}
实现
2.选择排序
#include<stdio.h>
int main(int argc, const char *argv[])
{
int arr[]={29,58,99,14,75,63};
int n=sizeof(arr)/sizeof(arr[0]);
int x;
for(int i=0;i<n;i++){
int min=i;
for(int j=i+1;j<n;j++){
if(arr[min]>arr[j]){
min=j;
}
}
if(min!=i){
x=arr[min];
arr[min]=arr[i];
arr[i]=x;
}
}
for(int i=0;i<n;i++){
printf("%d ",arr[i]);
}
putchar(10);
return 0;
}
实现
3.冒泡排序
4.快排