以下是一個Python實現的簡單二分查找演算法的代碼示例: def binary_search(arr, target): left, right = 0, len(arr) - 1 while left <= right: mid = (left + right) // 2 # 找到中間元素的索引 ...
以下是一個Python實現的簡單二分查找演算法的代碼示例:
def binary_search(arr, target):
left, right = 0, 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
# 測試
my_list = [1, 3, 5, 7, 9, 11, 13, 15]
target_value = 7
result = binary_search(my_list, target_value)
if result != -1:
print(f"目標值 {target_value} 在列表中的索引是 {result}")
else:
print(f"目標值 {target_value} 未在列表中找到")
這個代碼示例實現了一個二分查找演算法,用於在已排序的列表中查找目標值。它通過不斷將搜索範圍縮小為左半部分或右半部分來快速定位目標值,從而提高了查找效率。如果找到目標值,它會返回目標值的索引,否則返回-1。