# include <iostream>
using namespace std;
void print(int array[],int n)
{
for (int i = 0; i < n; i++)
{
cout << array[i] << " ";
}
cout << endl;
}
int selectSort(int array[], int n)
{
int count = 0;//记录交换次数
int min_index = 0;//存储最小值的索引
int temp;//中间变量
for (int i = 0; i < n; i++)//遍历数组
{
min_index = i;
for (int j = i + 1; j < n; j++)
{
if (array[min_index] > array[j])
{
min_index = j;
}
}
//判断当前位置的元素是否等于假设的第i小元素,如果不等于则交换这两个元素
if (min_index != i)
{
temp = array[min_index];
array[min_index] = array[i];
array[i] = temp;
count++;
}
}
return count;
}
int main()
{
int array[5] = { 5,1,2,9,2 };
selectSort(array, 5);
print(array, 5);
return 0;
}
c++选择排序
最新推荐文章于 2024-07-27 16:13:43 发布