在C++中,lower_bound函數用于在有序序列中查找第一個不小于指定值的元素的位置。具體來說,lower_bound函數返回一個迭代器,指向序列中第一個不小于指定值的元素。
lower_bound函數的使用方法如下:
#include <algorithm>
#include <vector>
int main() {
std::vector<int> vec = {1, 2, 3, 4, 5};
// 查找第一個大于等于3的元素的位置
auto it = std::lower_bound(vec.begin(), vec.end(), 3);
if (it != vec.end()) {
std::cout << "第一個大于等于3的元素的位置為:" << std::distance(vec.begin(), it) << std::endl;
}
return 0;
}
在上面的例子中,lower_bound函數將返回一個指向元素3的迭代器,在這個例子中,3是大于等于3的第一個元素,因此輸出為"第一個大于等于3的元素的位置為:2"。