#include<iostream>
using namespace std;
#define M 11
void SelectSort(int a[])
{
cout << "排序过程: " << endl;
int pos;//目前最小的数字的位置
int temp;//temp存最小数字
for (int i = 0; i < M; i++)
{
pos = i;//最小值位置
temp = a[i];//最小值
for (int j = i + 1; j < M; j++)//查找最小字符
{
if (a[j] < temp)//新的最小值出现
{
pos = j;//新的最小字符的位置
temp = a[j];
}
}
a[pos] = a[i];//交换元素
a[i] = temp;//最小值置于最低位置
for (int k = 0; k < M; k++)
cout << a[k] << " ";
cout << endl;
}
}
void main()
{
cout << "--------------选择排序--------------" << endl;
int a[M] = { 1110, 209, 386, 768, 185, 247, 606, 230, 834, 54, 12 };
cout << "排序之前的元素为: \n";
for (int i = 0; i < M; i++)//循环排序前数组
cout << a[i] << " ";
cout << endl;
SelectSort(a);//选择排序法
cout << "排序结果为: \n";
for (int i = 0; i < M; i++)//循环排序后数组
cout << a[i] << " ";
cout << endl;
}
选择排序
最新推荐文章于 2024-08-05 17:33:55 发布