利用STL二分查找范围

设要查询的数组为A,A有n个元素,且递增排列

查询>=x的第一个下标 int p=lower_bound(A,A+n,x)-A;

查询>x的第一个下标   int p=upper_bound(A,A+n,x)-A;

查询<=x的最后一个下标 int p=upper_bound(A,A+n,x)-A-1;

查询<x的最后一个下标 int p=lower_bound(A,A+n,x)-A-1;

 

查询等于x的数量int n=upper_bound(A,A+n)-lower_bound(A,A+n);

以上基本就是完整的利用二分查找范围了

posted @ 2015-03-30 00:19  逍遥丶綦  阅读(115)  评论(0)    收藏  举报