我是python的新手,正在尝试学习一些算法技术。
有人可以帮助我了解我在这里做错了什么吗?
出现错误IndexError:列表索引超出范围
这是我的代码
def binary_search(arr,item):
#keeping track of elements in array
low = 0
high = len(arr)
#mid section
while low <= high:
mid = (low + high)
guess = arr[mid]
if guess == item:
return mid
if guess > item:
high = mid - 1
else:
low = mid + 1
return None
a = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
print(binary_search(a, 3))