概述 二分查找也称折半查找(Binary Search),它是一种效率较高的查找方法。但是,二分查找要求数组数据必须采用顺序存储结构有序排列。
原理
首先,假设数组中元素是按升序排列,将数组中间位置的数据与查找数据比较,如果两者相等则查找成功;否则利用中间位置记录将数组分成前、后两个子数组,如果中间位置数据大于查找数据,则进一步查找前子数组,否则进一步查找后子数组。 重复以上过程,直到找到满足条件的数据,则表示查找成功, 直到子数组不存在为止,表示查找不成功
查找方法:
1.确定查找的范围 最小—最大
2.计算中间的下标 (最小+最大)/2
3.比较中间下标数据,中间数据较大,则最大下标等于中间下标-1
比较中间下标数据,中间数据较小,则最小下标等于中间下标+1
4.当最小下标大于最大下标时,查找失败,数据是不存在的