C++lower_bound函数
时间: 2023-11-11 11:00:00 浏览: 161
lower-bound函数2.zip
C++中的lower_bound函数是一个STL算法,用于在有序序列中查找第一个大于等于给定值的元素的位置。它的函数原型如下:
```cpp
template<class ForwardIt, class T>
ForwardIt lower_bound(ForwardIt first, ForwardIt last, const T& value);
```
其中,`first`和`last`分别表示要查找的序列的起始和终止位置,`value`表示要查找的值。函数返回一个迭代器,指向序列中第一个大于等于`value`的元素位置。如果序列中不存在大于等于`value`的元素,则返回`last`。
下面是一个使用lower_bound函数的例子:
```cpp
#include <iostream>
#include <algorithm>
#include <vector>
int main() {
std::vector<int> v = {1, 2, 3, 4, 4, 5};
auto it = std::lower_bound(v.begin(), v.end(), 4);
std::cout << "The first element not less than 4 is " << *it << '\n';
return 0;
}
```
输出结果为:
```
The first element not less than 4 is 4
```
这里lower_bound返回了一个指向第一个值为4的位置的迭代器。
阅读全文