以下是一個(gè)Python實(shí)現(xiàn)的簡(jiǎn)單二分查找算法的代碼示例:文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-703225.html
def binary_search(arr, target):
left, right = 0, len(arr) - 1
while left <= right:
mid = (left + right) // 2 # 找到中間元素的索引
if arr[mid] == target: # 如果中間元素等于目標(biāo)值,返回中間元素的索引
return mid
elif arr[mid] < target: # 如果中間元素小于目標(biāo)值,將搜索范圍縮小到右半部分
left = mid + 1
else: # 如果中間元素大于目標(biāo)值,將搜索范圍縮小到左半部分
right = mid - 1
return -1 # 如果未找到目標(biāo)值,返回-1
# 測(cè)試
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"目標(biāo)值 {target_value} 在列表中的索引是 {result}")
else:
print(f"目標(biāo)值 {target_value} 未在列表中找到")
這個(gè)代碼示例實(shí)現(xiàn)了一個(gè)二分查找算法,用于在已排序的列表中查找目標(biāo)值。它通過(guò)不斷將搜索范圍縮小為左半部分或右半部分來(lái)快速定位目標(biāo)值,從而提高了查找效率。如果找到目標(biāo)值,它會(huì)返回目標(biāo)值的索引,否則返回-1。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-703225.html
到了這里,關(guān)于chatgpt使用python寫一段二分查找的demo的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!