数据结构:二分法源代码
时间: 2024-06-15 18:01:59 浏览: 142
二分法源代码
二分法,也称为折半查找,是一种在有序数组中查找特定元素的搜索算法。其基本思想是每次将搜索范围缩小一半,直到找到目标元素或者确定它不存在。以下是使用 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"元素 {target} 在数组中的位置是 {result}")
else:
print(f"元素 {target} 不在数组中")
```
阅读全文