📌  相关文章
📜  C++ STL中向量的std :: upper_bound和std :: lower_bound

📅  最后修改于: 2021-05-30 04:38:13             🧑  作者: Mango

单击此处获取向量的集合1和集合2。

向量– upper_bound和lower_bound

迭代器lower_bound(首先迭代器,最后迭代器,const val)
迭代器upper_bound(首先迭代器,最后迭代器,const val)
lower_bound返回一个迭代器,该迭代器指向[first,last)范围内的第一个元素,其值小于’val’。
upper_bound返回一个迭代器,该迭代器指向[first,last)范围内的第一个元素,该元素的值大于’val’。

CPP
// lower_bound and upper_bound in vector
#include  // for lower_bound, upper_bound and sort
#include 
#include  // for vector
 
using namespace std;
 
int main()
{
    int gfg[] = { 5, 6, 7, 7, 6, 5, 5, 6 };
 
    vector v(gfg, gfg + 8); // 5 6 7 7 6 5 5 6
 
    sort(v.begin(), v.end()); // 5 5 5 6 6 6 7 7
 
    vector::iterator lower, upper;
    lower = lower_bound(v.begin(), v.end(), 6);
    upper = upper_bound(v.begin(), v.end(), 6);
 
    cout << "lower_bound for 6 at position "
         << (lower - v.begin() + 1) << '\n';
    cout << "upper_bound for 6 at position "
         << (upper - v.begin() + 1) << '\n';
 
    return 0;
}


输出 :

lower_bound for 6 at position 4
upper_bound for 6 at position 7
要从最佳影片策划和实践问题去学习,检查了C++基础课程为基础,以先进的C++和C++ STL课程基础加上STL。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程”