您的位置:首页 > 其它

蓝桥杯 基础练习 数列排序

2016-05-31 16:39 351 查看
问题描述

  给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1<=n<=200

输入格式

  第一行为一个整数n。

  第二行包含n个整数,为待排序的数,每个整数的绝对值小于10000。

输出格式

  输出一行,按从小到大的顺序输出排序后的数列。

样例输入

5

8 3 6 4 9

样例输出

3 4 6 8 9

刚好刚接触c++没多久

熟悉熟悉qsort

#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
int compare(const void *a,const void *b)//qsort必须有的函数,用来判断是升序还是降序,a在前,b在后,必须是void,后来转换类型即可
{
return *(int*)a-*(int*)b;//判断是升序还是降序
}
int main()
{
vector<int>st(201);
int N;
cin>>N;
for(int i=0;i<N;i++)
cin>>st[i];
qsort(&st[0],N,sizeof(st[0]),compare);//首地址,几个,每个元素大小,升序还是降序(自己编)
for(int j=0;j<N;j++)
j==N-1?cout<<st[j]:cout<<st[j]<<" ";
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: