顾名思意,就是直接从待排序数组里选择一个最小(或最大)的数字,顺序放入新数组,直到全部拿完
再简单点,对着一群数组说,你们谁最小出列,站到最后边,然后继续对剩余的无序数组说,你们谁最小出列,站到最后边
再继续刚才的操作,一直到最后一个,继续站到最后边,现在数组有序了,从小到大
#include<iostream>
using namespace std;
int select_sort(int a[],int n);
int output(int a[],int n);
int main()
{
int a[]={2,1,3,5};
int n = 4;
output(a,n);
select_sort(a,n);
output(a,n);
return 0;
}
int select_sort(int a[],int n)
{
int i,j;
int temp;
for(i=0;i<n-1;i++)
{
int index = i;
for(j=i+1;j<n;j++)
{
if(a[j]<a[i])
{
index = j;
}
}
if(index!=i)
{
temp = a[index];
a[index] = a[i];
a[i]=temp;
}
}
return 0;
}
int output(int a[],int n)
{
for(int i = 0;i<n;i++)
cout<<a[i]<<' ';
cout<<endl;
return 0;
}
,顺序放入新数组,直到全部拿完
再简单点,对着一群数组说,你们谁最小出列,站到最后边,然后继续对剩余的无序数组说,你们谁最小出列,站到最后边
再继续刚才的操作,一直到最后一个,继续站到最后边,现在数组有序了,从小到大。