C++

二分

lower_bound/upper_bound

这两个函数是STL中用于二分查找的两个函数,用法:假定我们有一个有序的数组a,并将数x作为二分查找的目标,那么:

lower_bound(a,a+n,x)-a; //下标从0开始
lower_bound(a + 1,a+n+1,x) - a;//下标从1开始

它们就能取得最小的a数组的下标i,满足ai >= x

upper_bound(a,a+n,x)-a      //下标从0开始
upper_bound(a+1,a+n+1,x)-a  //下标从1开始

它们就能取得最小的a数组的下标i,满足ai > x

posted @ 2024-12-09 13:32  weikelai  阅读(45)  评论(0)    收藏  举报