二分查找每次都取中间那个元素跟需要查找的元素比较,返回要查找的元素在列表中的位置
python代码如下:
def binary_search(list, item):
low = 0
high = len(list) - 1
while low <= high:
mid = (low + high)//2
guess = list[mid]
if guess == item:
return mid
if guess > item:
high = mid-1
else:
low = mid + 1
return None
my_list = [1,2,3,4,5,6,7]
print (binary_search(my_list,5))