AC

せいしゅん404  •  4年前


#include<cstdio> 
#include<iostream> 
#include<cstring> 
using namespace std; 

int num[105]; 
int main(void){ 
int n,min=-1,tmp; 
cin>>n; 
for(int i=0;i<n;i++){ 
 cin>>num[i]; 

//选择排序 
for(int i=0;i<n;i++){ 
 //把当前轮最小数的下标选出来 
 min=-1; 
 for(int j=i;j<n;j++){ 
  if((min==-1)||num[min]>num[j]){ 
   min=j; 
  } 
 } 
 //当前轮最小下标的数与第i个位置的书进行交换 
 tmp=num[i]; 
 num[i]=num[min]; 
 num[min]=tmp; 
 //swap(num[i],num[min]) 两个数的交换 
 cout<<"swap(a["<<i<<"], a["<<min<<"]):"; 
 //按照要求输出每一轮的排序 
 for(int i=0;i<n;i++){ 
  cout<<num[i]<<" "; 
 } 
 cout<<endl; 

return 0; 
}


评论:

请先登录,才能进行评论