#include<algorithm>
1.sort()
两个参数时默认从小到大排序。
排序对象若存放在普通数组中,则用sort(a,a+n)的方式调用。
排序对象若存放在vector中,则用sort(v.begin(),v.end())的方式调用。
从大到小排序的方法:
2.lower_bound()
在从小到大的排序中:
lower_bound(begin,end,num):返回的是地址。从begin到end-1二分查找第一个大于或等于num的数字,返回其地址,若找不到,则返回end的地址。
一般利用int p = lower_bound(begin,end,num)-begin求num在数组中的坐标p。
在从大到小的排序中:
同理,只不过查找的是第一个小于或者等于num的数字的地址。
但书写有变化:lower_bound(begin,end,num,greater<type>),type是数组的了类型。
3.upper_bound()
使用方法和lower_bound相同,只不过查找的是第一个大于(或小于)num的数字的地址。