c++中数组如何排序?

以及写了结构体后,用sort如何只排某一部分的序;假设我的结构体中是s[maxn],a是一组数字,要求从大到小排。... 以及写了结构体后,用sort如何只排某一部分的序;假设我的结构体中是s[maxn],a是一组数字,要求从大到小排。 展开
 我来答
坚定又憨厚的牡蛎5874
推荐于2019-09-24
知道答主
回答量:30
采纳率:0%
帮助的人:13.1万
展开全部
sort在algorithm中默认是升序排列的。
比如int array[5]={1,3,5,4,2},直接sort(array,arrya+5)结果是1,2,3,4,5
int cmp(int a,int b)
{
retrun a>b;
}
sort(array,array+5,cmp);
结果就会变成降序。5,4,3,2,1

如果是结构体的话,比如
struct AA
{
int a,b;
bool ok;
char *ch;
};

按照a的降序来排
int cmp(AA x,AA y)
{
retrun x.a>y.a;
}

然后就会按照关键字a来排序。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式