1、选择法排序简介
选择法排序算法是一种常用的排序算法,他的实现方法是遍历数组所有元素,找出最小的元素,将它与第一个元素交换;然后遍历剩下的元素,找出最小的元素并与第二个元素交换;接下来再遍历剩下的元素,找出最小的元素并与第三个元素交换;如此反复,知道数组末尾。
比如一个5个元素的数组5、3、1、2、4,使用选择法进行排序,排序步骤如下所示。
2、选择法代码示例
下面我们采用c语言编写一段代码来实现上面的5个数的排序,代码如下所示。
#include <stdio.h>void main()
{int i,j;int data[5]={5,3,1,2,4};int temp;int min;printf("Data: ");for(i=0;i<5;i++)printf("%d ",data[i]);printf("\n");for(i=0;i<5;i++){min = i; for(j=i+1;j<5;j++){ if(data[j]<data[min]){min=j;}}temp = data[i];data[i] = data[min];data[min] = temp;}printf("Final data: ");for(i=0;i<5;i++)printf("%d ",data[i]);printf("\n");}
编译代码并运行,结果如下所示。
Data: 5 3 1 2 4
Final data: 1 2 3 4 5