lower_bound 与 upper_bound

每次使用  lower_bound 和 upper_bound 的时候,总是有些模糊,有些纠结。

下面我按自己理解的意思将lower_bound和upper_bound  作了一个简单的比较,留个笔记。

1.  函数使用

     lower_bound(first, end, val)

     upper_bound(first, end, val)

1.  lower_bound 和 upper_bound 的用的都是二分查找,故需要给的数组序列是排序的。

2.  lower_bound 返回的是第一个 大于等于 val 的位置,upper_bound 返回的是第一个大于val的位置

     例如: 有序数组  1, 5, 9, 11, 11, 13

     lower_bound(first, end, 5) - first  =  1

     upper_bound(first, end, 5) - frist =  2

     lower_bound(first, end, 6) - first = 2

     upper_bound(first, end, 6) - first = 2

     lower_bound(first, end, 11) - frist = 3

     upper_bound(first, end, 11) - first = 5




    


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值