1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
|
def binarySearch(a, key, start, end):
size = end - start
if size <= 0:
return None
center = (start + end) / 2
if key == a[center]:
return center
elif key < a[center]:
return binarySearch(a, key, start, center)
else:
return binarySearch(a, key, center+1, end)
|