以下是一个使用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
return -1
# 测试
arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
target = 5
result = binary_search(arr, target)
if result != -1:
print(f"目标元素 {target} 在数组中的索引位置为 {result}")
else:
print("目标元素不在数组中")
在这个示例中,binary_search
函数接受一个已排序的数组arr
和目标元素target
作为参数,返回目标元素在数组中的索引位置。如果目标元素不在数组中,则返回-1。