二分查找又成对半查找,是一种效率较高的查找方式。
二分查找要求查找数据首先按照线性顺序排列,计算中间量,通过判断中间量相对于目标量的关系,来更新收缩范围以达到对目标量的快速查找。
二分查找的时间复杂度为O(log n)
相对于顺序查找的时间复杂度O(n),正常情况下会大大降低运行效率。
对于二分查找有关的有三方面因素控制:
左右边界、中间值(r,l,m):
对于三者之间的关系是一个动态的联动关系,中间值由左右边界实时更新
再由中间值的关系更新左右边界
升降序:
升降序对二分查找的影响不大,主要体现在对于其他关系选择的影响上。
判断条件:
判断条件可以进行扩展,将二分查找运用于更多的场景中。