什么是二分查找?
二分查找是一种快速查找算法。时间复杂度为O(logn)。他要求数据集为一个有序数据集。
二分查找应用场景的局限性
依赖顺序表(必须有序)结构,简单来说就是数组。
其次由二分查找的查找方式(随即查找)可以得出,链表并不能作为二分查找的数据结构。
数据量不能太小。当数据量太小的时候,二分查找还不如遍历。
数据量不能太大。由于数组的缘故,由数组的特性可知,他需要内存中连续的一块空间,这样太大的数据用数组存储就会比较吃力。
变形二分查找(主要用途)
变形二分查找有点类似于近似查找。
假设我们给定一个有重复元素的顺序数组。要求查询第一个值等于给定的元素。
补充
Bug free:终止条件,区间边界值更新,返回值选择