算法提高 选择排序 时间限制:1.0s 内存限制:256.0MB 提交此题 选择排序 问题描述 排序,顾名思义,是将若干个元素按其大小关系排出一个顺序。形式化描述如下:有n个元素a[1],a[2],…,a[n],从小到大排序就是将它们排成一个新顺序a[i[1]]
#include <iostream>#include <algorithm>#include <cstring>#include <cstdio>#include <queue>#include <cmath>#include <stdlib.h>#include <map>using namespace std;int a[100000];int main(){ int n; while(cin>>n) { for(int i=0;i<n;i++) cin>>a[i]; for(int i=0;i<n;i++) { int minx=10000000,tag; for(int j=i;j<n;j++) { if(minx>a[j]) { minx=a[j]; tag=j; } } swap(a[i],a[tag]); cout<<"swap(a["<<i<<"], a["<<tag<<"]):"; for(int j=0;j<n;j++) { cout<<a[j]<<' '; }cout<<endl; } }}新闻热点
疑难解答