selection sort选择排序:
以将最小的数据放在最前面为例:
从第一个数据到最后一个数据进行比较,找到最小的,放在第一个
再从第二个数开始到最后一个数比较,找到第二小的,放在第二个
以此类推,蛮简单的
代码如下:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int N;
int number[50]={0};
int min;
int i=0,j=0,J=0;
scanf("%d",&N);
for( i=0;i<N;i++)
{
scanf("%d,",&number[i]);
}
for(i=0;i<N;i++)
{
min=number[i];
for(j=i;j<N;j++)
{
if(number[j]<min)
{
min=number[j];
J=j;
}
}
if(min!=number[i])
{
number[J]=number[i];
number[i]=min;
}
if(i!=N-1)
{
for(int m=0;m<N;m++)
{
printf("%d,",number[m]);
}
printf("\n");
}
}
return 0;
}