以下是一個使用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。