upper_bound 和lower_bound是二分查找,因此效率略高,但笔者在使用的时候发现偶尔会有一些问题,因此写了这篇文章,总结了一发。web

首先,最形象的一句话:

upper_bound(i) 返回的是键值为i的元素能够插入的最后一个位置(上界)

lowe_bound(i) 返回的是键值为i的元素能够插入的位置的第一个位置(下界)。svg

怎么理解呢,举例:

在升序的set里面

set里没有元素i的时候,两个元素的返回值是同样的。

1 2 4 5 这个序列,upp(3)和low(3)都返回位置2(下标)xml

若是只有一个元素i,low返回那个元素的位置,而upp返回那个元素的位置的后一个位置。

1 2 4 5 这个序列upp(2)返回下标2而low(2)返回下标1it

多个元素i,low返回那个元素的位置,upp返回那多个元素中的最后一个的后一个位置。

1 2 2 4 5 这个序列 upp(2)返回下标3的位置,low(2)返回下标1的位置。效率

!!!!!!!!!!!!!

特别注意:举例在一个升序的容器里,若是全部元素都大于i则,upp和low都返回begin。都小于i则返回end(越界了)。容器

最后再来一句,看是否好理解一些。webkit

terator lower_bound( const key_type &key ): 返回一个迭代器,指向键值>= key的第一个元素。

iterator upper_bound( const key_type &key ):返回一个迭代器,指向键值<=key的最后一个元素的后一个元素。

★降序排列的容器:

iterator lower_bound( const key_type &key ): 返回一个迭代器,指向键值<= key的第一个元素。

iterator upper_bound( const key_type &key ):返回一个迭代器,指向键值>=key的最后一个元素的后一个元素。迭代器

upperbound找不到_upper_bound 和lower_bound 的返回值问题相关推荐

  1. upperbound找不到_关于lower_bound( )和upper_bound( )的常见用法

    头文件:#include lower_bound( )和upper_bound( )都是利用二分查找的方法在一个排好序的数组中进行查找的. 在从小到大的排序数组中, lower_bound( begi ...

  2. upperbound找不到_lower_bound()函数和upper_bound()函数,以及二分查找

    lower_bound(): 默认版本 template ForwardIterator lower_bound (ForwardIterator first, ForwardIterator las ...

  3. Citrix联机插件配置管理器:找不到满足所有锁定要求的值

    在新老版本的Receiver升级过程中,特别是Online Plugin升级到Receiver的时候,在一些已经使用的环境中,经常出现Citrix联机插件配置管理器提示锁定要求无法满足的问题,如下: ...

  4. lower_bound( )和upper_bound( )的返回值及用法

    lower_bound( )和upper_bound( )都是利用二分查找的方法在一个排好序的数组中进行查找的 在从小到大的排序数组中, lower_bound( begin,end,num):从数组 ...

  5. java 返回值判断_在Java中判断方法重载的条件除了参数外,还可以通过返回值类型判断。_学小易找答案...

    [单选题]若int x;且有下面的程序片断,则输出结果是() . for (x=3; x<6; x++) { printf((x%2) ? "##%d" : "** ...

  6. 找出数组中不重复的值php_PHP找出数组中不重复出现的值

    这里通过php数组函数array_count_values()去实现. 实例:<?php $arr = array('2','4','5','8','4','10','2','10','2'); ...

  7. bat获取命令返回值_全网都在找的redis字符串命令,总结在这了

    概述 redis一般用来做缓存,可能很多朋友都没有深入去学习redis的相关命令,只是涉及到安装部署而已,所以今天主要总结介绍一下redis字符串的一些命令. SET 语法:SET key value ...

  8. java找不到返回值_java.lang.IllegalArgumentException:找不到类型返回值的转换器

    有了这段代码 @RequestMapping(value = "/bar/foo", method = RequestMethod.GET) public ResponseEnti ...

  9. oppor9splus计算机找不到了,如果oppor9splus的返回键失败,该如何设置oppor9splus虚拟键?...

    如果oppor9splus的返回键失败,该怎么办? 问: oppor9oppor9splus虚拟密钥设置splus返回密钥失败怎么办 答案: 如果您手机上的按键出现故障或间歇性工作,则可能有以下原因. ...

最新文章

  1. 刚刚!最新大学专业排名出炉:北大、清华和浙大居前三!
  2. TextBox中的KeyDown 时间不能响应的问题!
  3. fastapi日志重复打印_【FastAPI】踩坑总结
  4. iOS重绘机制drawRect
  5. 自动计算请假工时 排除周六周日
  6. java静态导入_Java中越来越多地接受静态导入吗?
  7. 《BI项目笔记》多维数据集中度量值设计时的聚合函数
  8. 1.4编程基础之逻辑表达式与条件分支_16三角形判断(9分)
  9. 人脸识别时一定要穿衣服!小心被看光光......
  10. 碰运气解决LATEX中中文颜色深浅不一的问题
  11. Android Camera2+HAL3架构
  12. 运维标书技术部分的编写
  13. 如何开会——高效会议八项原则
  14. 乾隆的太医留下来的民间偏方
  15. 如何将音视频中的伴奏背景音乐和人声分离?
  16. 多元微积分_stokes定理证明
  17. Layer Tree 绘制
  18. JAVA实现Excel模板导入案例分析
  19. 【SpringBoot深入浅出系列】SpringBoot之集成MyBatis-Plus
  20. 数据结构课设—图型结构题目—行车路线

热门文章

  1. CAD梦想画图中的“绘图工具——点”
  2. 利用python写一个简单的双色球彩票系统
  3. 【BI赋能】北大国际医院李黎:打好数据基础功,才能深化医院绩效管理
  4. 凯撒密码C语言去掉空格字符,凯撒密码C语言实现
  5. 百度OCR API识别失败:Open api qps request limit reached 错误也许在这
  6. NL2SQL概述:一文了解NL2SQL
  7. 中忻嘉业:因抖音ccr指标异常的惩罚
  8. 【未雨绸缪】海南测控天线系统防御台风的措施
  9. 计算机网络(二) 虚拟网桥
  10. [转]脑梗塞的诊治指南