本博客参考 二分查找规律, 进行总结及归纳 方便记忆
寻找左侧边界的二分查找
| 返回left和right其实都一样,因为循环终止条件为left==right |
while 的退出条件是 会存在以下情况使得索引越界: |
寻找右侧边界的二分查找
|
while 循环的终止条件是 你非要体现右侧的特点,返回 |
两端都闭的三种写法(不存在返回-1)
| 二分查找 | 查找左侧边界 | 查找右侧边界 |
剑指 Offer 53 - I. 在排序数组中查找数字 I
两端都闭的写法(不存在也返回 返回的刚好是插入点的位置)
1. target+0.5 -0.5 左右都可
最好返回left,因为left刚好是插入点
最后结果:7-3 = 4 所以4有4个
2. target target-1 只能是右边
最后结果:6-2 = 4 所以4有4个