python实现二分法
时间: 2024-11-03 16:08:12 浏览: 12
Python实现二分法算法实例
二分查找算法(Binary Search),也被称为折半搜索,是一种在有序数组中寻找特定元素的搜索算法。它的工作原理是每次将数组分成两部分,判断目标值在哪一部分,然后继续在这个部分内应用同样的过程,直到找到目标值或者确定其不存在于数组中。Python实现二分查找通常如下:
```python
def binary_search(arr, target):
low = 0
high = len(arr) - 1
while low <= high:
mid = (low + high) // 2
if arr[mid] == target:
return mid
elif arr[mid] < target:
low = mid + 1
else:
high = mid - 1
# 如果没找到目标值,返回-1表示不在数组中
return -1
# 示例用法
arr = [1, 3, 5, 7, 9]
target = 5
result = binary_search(arr, target)
if result != -1:
print(f"元素 {target} 在数组中的索引是 {result}")
else:
print(f"{target} 不在数组中")
```
阅读全文