#include <iostream>
using namespace std;
int main()
{
int arr[10]{ 4,6,1,8,3,0,7,2,5,9 };
for (int i = 0; i < 10 - 1; i++)
{
int min = i; //定义一个变量记录下标
for (int j = i+1; j < 10-1 ; j++) //i+1是每次把最小数放置最前后,重新寻找没有交换的数开头
{ //每遍历一次找到最大数后,交换次数都减去
if (arr[j] < arr[min]) //如果比当前数小,则把最小数值的下标重新记录
{
min = j;
}
}
swap(arr[i], arr[min]); //找到最小数后把找到的当前最小数放在前面
}
for (int i = 0; i < 10; i++)
{
cout << arr[i] << " ";
}
return 0;
}
数据结构与算法————选择排序
最新推荐文章于 2024-01-18 11:00:00 发布