C中的二分函数:upper_bound()与lower_bound()

来源:互联网 发布:淘宝卖虚拟物品流程 编辑:程序博客网 时间:2024/05/17 00:56

二分函数直接用

upper_bound()与lower_bound()使用方法

都是二分函数,头文件<algorithm>
upper_bound返回第一个大于的元素的下标;
lower_bound返回第一个大于等于元素的下标;

#include <iostream>#include <algorithm>//必须包含的头文件using namespace std;int main(){  int point[10] = {1,3,7,7,9};  int tmp = upper_bound(point, point+5, 7) - point;//按从小到大,7最多能插入数组point的哪个位置   tmp = lower_bound(point, point+5, 7) - point;////按从小到大,7最少能插入数组point的哪个位置   printf("%d\n",tmp);   return 0;}

output:
4
2

0 0