简单的选择排序
一堆无序数中,从头到尾扫描序列,找出最小的关键字加入有序队列
从剩下的无序数队列里继续早出最小的关键字加入有序队列
……
我举个栗子
选择排序一个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; }
运行结果