C++中的lower_bound函数怎么使用

   2025-02-13 7630
核心提示:在C++中,lower_bound函数用于查找有序序列中第一个不小于给定值的元素的位置。它的语法如下:template class ForwardIterator,

在C++中,lower_bound函数用于查找有序序列中第一个不小于给定值的元素的位置。它的语法如下:

template <class ForwardIterator, class T>ForwardIterator lower_bound (ForwardIterator first, ForwardIterator last, const T& val);

其中,firstlast是表示范围的迭代器,val是要查找的值。lower_bound函数返回一个迭代器,指向第一个不小于val的元素位置。

下面是一个使用lower_bound函数的示例:

#include <iostream>#include <vector>#include <algorithm>int main() {    std::vector<int> nums = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};    int target = 6;    std::vector<int>::iterator it = std::lower_bound(nums.begin(), nums.end(), target);    if (it != nums.end() && *it == target) {        std::cout << "找到了目标元素:" << *it << std::endl;    } else {        std::cout << "未找到目标元素" << std::endl;    }    return 0;}

在上面的示例中,我们创建了一个有序的vector nums,并使用lower_bound函数查找值为6的元素。lower_bound函数返回的迭代器指向的是第一个大于等于6的位置,即指向6本身。然后我们判断迭代器指向的元素是否等于目标值6,如果相等,则表示找到了目标元素。

输出结果为:找到了目标元素:6

 
 
更多>同类维修知识
推荐图文
推荐维修知识
点击排行
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  网站留言