C++ 查找函数

1. lower_bound()

用于在指定区域内查找大于等于目标值的第一个元素(实质是二分法查找)

auto it = lower_bound(f.begin(), f.end(), num);

2. upper_bound()

查找的是第一个大于目标值的元素

int *p = upper_bound(a, a + 5, 3);

3. equel_range()

用于在指定范围内查找等于目标值的所有元素,前提是已排好序

pair<int*, int*> range = equal_range(a, a + 9, 4);

4. find()

用于在指定范围内查找和目标元素值相等的第一个元素,找不到会到end()

std::vector<int>::iterator it;
it = find(myvector.begin(), myvector.end(), 30);
if (it != myvector.end())
    cout << "查找成功:" << *it;
else
    cout << "查找失败";
return 0;

5. binary_search()

用于查找指定区域内是否包含某个目标元素,返回bool

bool hasElem = binary_search(a, a + 9, 4);

原文链接: https://www.cnblogs.com/Kinghao0319/p/14479679.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/208579

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月12日 下午11:28
下一篇 2023年2月12日 下午11:28

相关推荐