当前位置: 代码迷 >> 综合 >> C++ 二分查找函数(lower_bound,upper_bound,binary_search)
  详细解决方案

C++ 二分查找函数(lower_bound,upper_bound,binary_search)

热度:100   发布时间:2023-11-23 07:01:33.0

头文件

#include<algorithm>

使用前提:数组有序

lower_bound (初始地址,结束地址,要查找的数据)

前闭后开区间

假定要查找的数据x,返回该区间内第一个大于等于x的数组元素地址,如果找不到,则返回结束地址(越界)。

upper_bound(初始地址,结束地址,要查找的数据)

前闭后开区间

假定要查找的数据x,返回该区间内第一个大于x的数组元素地址,如果找不到,则返回结束地址(越界)。

binary_search(初始地址,结束地址,要查找的数据)

bool类型,假定要查找的数据x,返回该区间是否存在数据x。

ps:

lower_bound(x):返回容器中第一个值大于或等于x的元素的iterator位置。

upper_bound(x): 返回容器中第一个值大于x的元素的iterator位置。