函数lower_bound()在first和last中的前闭后开区间进行二分查找,返回大于或等于val的第一个元素位置。如果所有元素都小于val,则返回last的位置

举例如下:

一个数组number序列为:4,10,11,30,69,70,96,100.设要插入数字3,9,111.pos为要插入的位置的下标

pos = lower_bound( number, number + 8, 3) - number,pos = 0.即number数组的下标为0的位置。

pos = lower_bound( number, number + 8, 9) - number, pos = 1,即number数组的下标为1的位置(即10所在的位置)。

pos = lower_bound( number, number + 8, 111) - number, pos = 8,即number数组的下标为8的位置(但下标上限为7,所以返回最后一个元素的下一个元素)。

所以,要记住:函数lower_bound()在first和last中的前闭后开区间进行二分查找,返回大于或等于val的第一个元素位置。如果所有元素都小于val,则返回last的位置,且last的位置是越界的!!~

返回查找元素的第一个可安插位置,也就是“元素值>=查找值”的第一个元素的位置。

二分函数lower_bound()相关推荐

  1. 【C++ 二分函数——lower_bound upper_bound用法】

    大家好,我是Amy~ 好久不见啊(主要是我太懒了,这几天比较忙,不想更新--再加上快开学了,我的作业还没有做完QAQ)你们的暑假作业都做完了吗(哦对,大佬不用做作业QAQ) 那今天我们就接着上次的bi ...

  2. 给不会调用C++STL库中二分函数lower_bound,upper_bound,binary_search同学的一些话!

    lower_bound算法返回第一个大于等于给定值所在的位置.设置两个指针start和last,其中start指向数组的起始位置,last指向数组末尾位置之后的位置.当start和last指向相同位置 ...

  3. 论c++的二分函数lower_bound

    毋庸置疑,他返回的就是第一个大于等于要搜索的那个数: 但是如果这个数组里面的数都小于或者都大于呢? 本人测试了一下,当数列里面的数都大于这个数,返回0: 当数列里面的数都小于这个数,返回数组上界,(返 ...

  4. 二分检索函数lower_bound()和upper_bound()

    二分检索函数lower_bound()和upper_bound() 一.说明 头文件:<algorithm> 二分检索函数lower_bound()和upper_bound() lower ...

  5. 二分查找、求上界和下界(包括内置函数lower_bound、和upper_bound的使用)

    二分查找: //二分查找(迭代实现) int bsearch(int* array, int low, int high, int index) {int mid;while (low < hi ...

  6. c++ 二分查找的函数 lower_bound upper_bound binary_search

    简介 C++ STL 中二分查找函数主要有这三种: lower_bound() upper_bound() binary_search() 这三个函数都运用于有序区间. 用法 1. lower_bou ...

  7. C++ 二分查找函数 lower_bound upper_bound

    lower_bound (ForwardIterator first, ForwardIterator last,const T& val) (ForwardIterator first, F ...

  8. 【ACM】Uva 1152 (4 Values whose Sum is 0) 二分查找lower_bound() 和upper_bound()的使用

    [问题描述] The SUM problem can be formulated as follows: given four lists A, B, C, D of integer values, ...

  9. Let‘s Play Curling 二分,lower_bound(2020.12.南京)

    题意 : 红石头属于红队,蓝石头属于蓝队,分别给出所有红色蓝色石头在数轴上的位置,构造目标点的位置(实数),使得红队胜利且获得的分数尽可能多,红队的分数 等于 所有 比所有蓝石头离目标点近 的红石头 ...

最新文章

  1. 人为什么要睡觉?科学家给出进一步答案
  2. [VB] Option Explicit
  3. “化鲲为鹏,我有话说”如何用鲲鹏弹性云服务器部署《Hadoop伪分布式》
  4. 木兰编程语言重现:引用本地木兰模块;模拟凑十法加法
  5. python滤波器的截面图_Python OpenCV学习笔记之:图像滤波处理
  6. 外卖点餐系统源码|餐饮点餐源码开发
  7. 互联网公司的“江湖绰号”盘点,你知道几个?
  8. MySQL学习笔记(六)索引类别
  9. 华为路由三层交互:单臂路由实验
  10. android 全屏倒计时,全屏计时器app
  11. eigen 列拼接_eigen Dense矩阵拼接
  12. [风一样的创作]Layui图标列表,二次封装
  13. uni-app开发经验分享二十二: uni-app大转盘思路解析
  14. 大数据助力智慧物流,新一代物流产业数据价值分析
  15. ubuntu安装AIR微博方法
  16. 微信定向流量_微信沃卡发布 10元包300MB微信定向流量
  17. PowerBI基础知识——深化和钻取
  18. 各种开关的教程---凯利讯半导体
  19. Rose2003运行出现 -2147417848 (80010108)':Automation 错误
  20. Aria2Android 免root,Linux Bash脚本:在本地机上部署用户自用aria2服务

热门文章

  1. Oracle RAC 11R2配置归档、删除策略,闪回配置完整版
  2. Android Studio下导出jar包和aar包
  3. ECshop sina
  4. objective-c block 讲解
  5. MongoDB实战(11)Sharding 分片(上)
  6. TopCoder中插件的用法
  7. 最基本的01背包问题
  8. 博客文件第二部分 Linux Shell高级编程技巧——第一章 深入讨论
  9. mysql支持数据安全的引擎_MySQL 支持的存储引擎
  10. 假如明天灾难来临_北京医保容灾