从无序序列中选出最小的值放入有序序列中,这就是简单排序的思想
#include<stdio.h>
void ChooseSort(int a[],int n);
void main()
{
int a[6]= {23,1,45,35,12,33};
ChooseSort(a,6);
for(int i=0; i<6; i++)
{
printf("%d\t",a[i]);
}
}
void ChooseSort(int a[],int n)
{
for(int i=0; i<n; i++)
{
for(int j=i; j<n; j++)
{
if(a[i]>a[j])//从有序序列中找出最小的
{
int temp;
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
}
可以看出在待排序列为正序时,移动的次数最少。它是一种不稳定的排序算法。总的时间复杂度为O(n^2)。