温馨提示×

python二分查找算法代码怎么写

小亿
87
2023-10-22 03:03:03
栏目: 编程语言

下面是一个示例的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

# 示例使用
arr = [2, 4, 6, 8, 10, 12, 14, 16]
target = 10
index = binary_search(arr, target)

if index != -1:
    print(f"目标元素 {target} 在数组中的索引位置为 {index}")
else:
    print("目标元素不存在于数组中")

此代码中的binary_search函数接受一个已排序的数组和目标值作为参数,并返回目标值在数组中的索引位置(如果存在),否则返回-1。算法使用一个while循环,每次迭代都将数组的搜索范围减半,直到找到目标值或确定它不存在为止。

0