标签:
上一题中用到了二分查找,而二分查找的前提条件就是原数据有序,故需要先进行排序。
考虑用stl 中的sort函数对数据进行排序;由于不是基本数据类型而是自定义结构体不能自动排序,就需要给出排序规则。
方法有两种:
1.写 cmp函数
bool cmp(stu a,stu b){
return strcmp(a.stu_no,b.stu_no)<0 ;
}
然后调用sort(buf,buf+n,cmp);
2.直接定义该结构体的小于运算符(sort只需要利用小于关系排序)来说明排序规则
struct stu{
...
bool operator<(const stu & x)const{
return strcmp(stu_no,x.stu_no)<0;
}
}buf[1000];
九度oj 题目1069:查找学生信息 续: 自定义sort排序规则
标签:
原文地址:http://www.cnblogs.com/sandy-t/p/4297726.html