手写一下二分查找算法。给定一个有序数组 arr 和一个目标元素 target ,
def binary_search(arr,target):start,end = 0,len(arr)-1while True:if end - start <= 1:if target == arr[start]:return(start)elif target == arr[end]:return(end)else:return(-1)mid = (start + end)//2if arr[mid]>=target:end = midelse:start = midprint(binary_search([1,4,7,8,9,12],9))
print(binary_search([1,4,7,8,9,12],3))