1、基本思想。在要排序的一组数中,选出最小的一个数与第一个位置的数交换,然后在剩下的数中找出最小的数与第二个位置的数交换。如此进行到倒数第二个数与倒数第一个比较为止。
2、实现。
int main()
{
int a[10]={11,42,53,25,36,6,75,8,26,4};
std::cout<<"before sort:"<<std::endl;
for(int i=0;i<10;++i)
std::cout<<a[i]<<"\t";
std::cout<<std::endl;
for(int i=0;i<9;++i)
{
int j=i+1;
int min=a[j];
int pos=-1;
for(;j<10;++j)
{
if(a[j]<min)
{
min=a[j];
pos=j;
}
}
if(pos!=-1)
std::swap(a[i],a[pos]);
}
std::cout<<"after sort:"<<std::endl;
for(int i=0;i<10;++i)
std::cout<<a[i]<<"\t";
std::cout<<std::endl;
return 0;
}
3、运行结果截图。