选择排序是最简单的排序算法之一,本节主要介绍众多选择排序方法中最常用的简单选
择排序。如图4-1所示,简单选择排序是指,对一个序列A中的元素A[1]~A[n],令i从1
到n枚举,进行n趟操作,每趟从待排序部分[i,n]中选择最小的元素,令其与待排序部分的
第一个元素A[i]进行交换,这样元素A[i]就会与当前有序区间[1,i-1]形成新的有序区间[1,i]。
于是在n趟操作后,所有元素就会是有序的。
void selectsort()
{
for(int i=1;i<=n;i++)
{
int k=i;
for(int j=i;j<=n;j++)
{
if(a[j]<a[k])
{
k=j;
}
}
int temp=a[i];
a[i]=a[k];
a[k]=temp;
}
}
两次循环,其中k作为交换的踏板