本文主要总结二分查找相关问题,这里 其实已经有一个不错的总结了。跟着那里的题目列表,自己写写答案。
Anyway,代码还得实操
二分查找相关问题总结如下(问题整理参考 这里)
给定一个有序数组(非降序)数组array和目标值target,数组中可能有重复元素
- 寻找任意 i 使得array[i]等于target,不存在返回-1
- 寻找最小的 i 使得array[i]等于target,不存在返回-1
- 寻找最大的 i 使得array[i]等于target,不存在返回-1
- 寻找最大的 i 使得array[i]小于target,不存在返回-1
- 寻找最小的 i 使得array[i]大于target,不存在返回-1
- 统计 target 在 array中出现的次数
问题1
给定一个升序(无重复元素)数组,在某一个位置旋转后得到数组array,以及给定的目标值target
- 寻找i使得 array[i]等于target,不存在返回-1
- 寻找array的最小元素的下标index,返回index