选择排序的意思就是在一串数字里面选择一个最小的数字出来,放在数组的第一位,而后再从第二位开始,向后面遍历,选择一个最小的数字,与第二位的数交换,如今的数组,第一个数字是最小的,第二个数字是第二小的,如此类推,结果就出来了。它的时间复杂度是O(n2)。代码以下: ios
#include<iostream>
using namespace std;
void SelectionSort(int a[],int n)
{
int i,j;
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
{
if(a[i]>a[j])
{
int temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
for(i=0;i<n;i++)
cout<<a[i]<<" "<<endl;
}
int main()
{
int n,i,a[10];
// cout<<"输出要排序的数字个数"<<endl;
// cin>>n;
for(i=0;i<10;i++)
cin>>a[i];
SelectionSort(a,10);
return 0;
}
数组