lower_bound( )和upper_bound( )

原理:

都是基于二分查找。

升序数组中:

  lower_bound( begin,end,num):返回(begin和end之间)第一个大于或等于num的数字的地址。

  下标=返回地址-begin;

  upper_bound(begin,end,num) : (同上) 唯一不同——返回第一个大于num的数字的地址。

降序数组中:

  lower_bound( begin,end,num,greater<type>() ):返回(begin和end之间)第一个小于或等于num的数字的地址。

  upper_bound(begin,end,num,greater<type>() ): 同上。不同点——第一个小于num的数字

 

posted @ 2022-05-09 17:55  xxj112  阅读(47)  评论(0)    收藏  举报