二分查找算法(数据结构)
时间: 2023-12-21 11:30:01 浏览: 101
数据结构实验——查找(二分查找&顺序查找)
二分查找算法,也称折半查找算法,是一种在有序数组中查找某一特定元素的搜索算法。该算法的时间复杂度为O(log n)。
以下是二分查找算法的实现步骤:
1. 确定数组的左右边界,即最小下标和最大下标。
2. 计算数组的中间位置,即中间下标。
3. 比较中间位置的值与目标值的大小关系,如果相等则返回中间位置,如果中间位置的值大于目标值,则在左半部分继续查找,否则在右半部分继续查找。
4. 重复步骤2和步骤3,直到找到目标值或者左边界大于右边界。
以下是Python实现二分查找算法的代码示例:
```python
def binary_search(arr, target):
left, right = 0, len(arr) - 1
while left <= right:
mid = (left + right) // 2
if arr[mid] == target:
return mid
elif arr[mid] > target:
right = mid - 1
else:
left = mid + 1
return -1
```
阅读全文