直接上代码!!!!
#include <iostream>
#include <vector>
#include <ctime>
using namespace std;
void Swap(vector<int>& T_vec, int max_idx, int min_idx)
{
int Temp_val = T_vec[max_idx];
T_vec[max_idx] = T_vec[min_idx];
T_vec[min_idx] = Temp_val;
}
void SelectSort(vector<int>& T_vec)
{
for (int i = 0; i < T_vec.size(); ++i)
{
int Temp_idx = i;
for (int j = i + 1; j < T_vec.size(); ++j)
{
if (T_vec[Temp_idx] > T_vec[j])
{
Temp_idx = j;
}
}
if (Temp_idx != i)
{
Swap(T_vec, i, Temp_idx);
}
}
}
void Text()
{
vector<int> T_vec;
srand((unsigned)time(nullptr));
cout << "请输入你要排序的数的个数: " << endl;
int Num = 0;
cin >> Num;
while (Num > 0)
{
T_vec.emplace_back(rand() % 10);
--Num;
}
cout << "排序前:";
for (vector<int>::iterator it = T_vec.begin(); it != T_vec.end(); ++it)
{
cout << *it << " ";
}
cout << endl;
SelectSort(T_vec);
cout << "排序后:";
for (vector<int>::iterator it = T_vec.begin(); it != T_vec.end(); ++it)
{
cout << *it << " ";
}
cout << endl;
}
int main()
{
Text();
system("pause");
return 0;
}