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

avatar
作者
猴君
阅读量:1

以下是一个简单的二分查找算法的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 和要查找的目标值 target。函数会返回目标值在数组中的索引,如果目标值不在数组中,则返回 -1。

以下是一个使用示例:

arr = [2, 5, 8, 12, 16, 23, 38, 56, 72, 91] target = 23  result = binary_search(arr, target) if result != -1:     print(f"目标值 {target} 在数组中的索引为 {result}") else:     print("目标值不在数组中") 

输出:

目标值 23 在数组中的索引为 5 

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!