一轮的算法训练完成后,对相关的题目有了一个初步理解了,接下来进行专题训练,以下这些题目就是汇总的高频题目,本篇主要聊聊二分查找,包括基础二分,寻找目标值的左右边界,搜索旋转数组以及波峰,以及x的平方根问题,所以放到一篇Blog中集中练习
题目 | 关键字 | 解题思路 | 时间 | 空间 |
---|---|---|---|---|
基本二分 | 二分查找 | 折半查找,在数组有序的前提下,依据值比较结果选择查找区间 | O(longn) | O(1) |
在排序数组中查找元素的第一个和最后一个位置 | 二分查找 | 找到目标值后不急着循环结束,需要继续寻找,直到找到目标值边界为止 | O(longn) | O(1) |
搜索旋转有序数组的最小值 | 二分查找 |