看到练习题上的选择算法,大意就是对数组A中的n个数进行排序:首先找到A中的最小元素,并将其与A[0]中的元素进行交换。接着,找出A中的次最小元素并将其与A[1]进行交换。对A中的前n-1个元素按照该方式进行交换。下面是代码
#include<iostream>
using namespace std;
int main()
{
int A[5]={3,2,1,4,5}; //初始化数组A
int min=A[0],n=0; //min存储最小值 ,n存储下标
for(int i=0;i<5;i++)
{
int j=i;
for(;j<5;j++){ //遍历找到最小值
if(min<A[j]){
min=A[j];
n=j;
}
}
A[n]=A[i]; //交换最小值位置
A[i]=min;
}
for(int i=0;i<5;i++){ //输出排序后的数组
cout<<A[i]<<",";
}
cout<<endl;
return 0;
}