binary_search怎么用
时间: 2024-09-20 08:09:44 浏览: 33
Binary_Search_Data.rar_binary_binary search
二分查找(Binary Search),也叫折半查找,是一种在有序数组中查找特定元素的高效算法。它的工作原理是每次比较中间元素与目标值,然后根据大小关系缩小搜索范围。以下是使用Python实现的一个简单版本:
```python
def binary_search(arr, target):
left = 0
right = len(arr) - 1
while left <= right:
mid = (left + right) // 2
if arr[mid] == target:
return mid # 找到目标,返回其索引
elif arr[mid] < target:
left = mid + 1 # 目标在右侧,更新左边界
else:
right = mid - 1 # 目标在左侧,更新右边界
return -1 # 没有找到目标,返回-1或类似值表示不存在
# 使用示例
arr = [1, 3, 5, 7, 9]
target = 5
result = binary_search(arr, target)
if result != -1:
print(f"Element {target} found at index {result}")
else:
print(f"{target} not in the array")
```
这个函数接受一个有序数组 `arr` 和一个目标值 `target`,通过不断缩小搜索区间来定位目标值。如果找到,返回目标的索引;否则返回 `-1` 表示未找到。
阅读全文