选择排序
#include <iostream>
using namespace std;
//选择排序,升序
//每次选择最小的数放到和无序区最前面的数交换
void SelectionSort(int n[], int l)
{
int i, j, min;//min记录最小数的索引号
for (i= 0; i< l; i++)
{
j= i;
min= i;
for (; j< l; j++)//找出最小数的索引号
{
if(n[j]< n[min])
min= j;
}
int t;
t= n[i];//最小数放前面
n[i]= n[min];
n[min]= t;
}
}
int main()
{
int t;
int n[100000];
cin>>t;
int i;
for (i= 0; i< t; i++)
{
cin>>n[i];
}
SelectionSort(n, t);
for (i= 0; i< t; i++)
{
cout<<n[i];
if(i< t- 1) cout<<' ';
}
cout<<endl;
system("pause");
return 0;
}

浙公网安备 33010602011771号