二分查找算法也称为折半搜索、二分搜索,是一种在有序数组中查找某一特定元素的搜索算法。算法是建立在有序数组基础上的。时间复杂度: T(n) = Θ(logn)。
原理及实现
基本原理:使用递归、分治的思想
- ① 当数组为空时,说明数组中不存在需查找的元素。
- ② 用有序数组的中间位置元素与需查找元素进行大小比较,如果相等,则查找结束。
- ③ 如果中间位置元素大于需查找元素,则从数组左侧位置进行递归查找。
- ④ 如果中间位置元素小于需查找元素,则从数组右侧位置进行递归查找。
使用Swift编写简单的代码实现,如下:
|
|
测试用例及结果
|
|