《算法图解》P7
二分查找(Python代码)在mid的计算有问题,
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