简单的选择排序
一堆无序数中,从头到尾扫描序列,找出最小的关键字加入有序队列
从剩下的无序数队列里继续早出最小的关键字加入有序队列
……
我举个栗子
选择排序一个6个数的数组
void selectsort(int R[],int n)
{
int temp,k;
for(int i=0;i<n;++i)
{
k=i;
for(int j=i+1;j<n;++j)
{
if(R[k]>R[j])
{
k=j;
}
}
temp=R[i];
R[i]=R[k];
R[k]=temp;
}
}
主函数
int main()
{
int R[6];
printf("输入6个数进行选择排序:\n");
for(int i=0;i<6;++i)
{
scanf("%d",&R[i]);
}
printf("排序之后:\n");
selectsort(R,6);
for(i=0;i<=5;++i)
{
printf("%d ",R[i]);
}
return 1;
}
运行结果
ok,很简单!