sort的排序写法(例:三级)

本文介绍了一种结构体分级排序的方法,通过多个条件逐步细化排序规则。首先按字符串字段进行排序,若相同则进一步按另一个字符串字段排序,再次相同则按整型数值排序。这种方法可以应用于多种场景,如按地区、名称和数量对水果进行排序。

结构体:

struct fruit{
    string place;
    string name;
    int num;
}a[10000];

二级:

    

bool cmp(fruit a,fruit b){//二级排序 
    if(a.place==b.place)
        return a.name<b.name;
    else
        return a.place<=b.place;
}

三级:

    

bool cmp1(fruit a,fruit b){//三级排序 
	if(a.place==b.place)//1
	{
		if(a.name==b.name)//2
		{
			return a.num<b.num;//3
		}
		else return a.name<b.name;//2
	}
	else return a.place<b.place;//1
} 
分级排序的写法就是直接判断相等情况,满足则顺序if判断相等情况嵌套 不满足则 else return 本级排序规则
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值