def bSearch(lst, val):
def __bSearch(lst, Low, High, queryVal):
if Low > High:
return -1
midIdx = (Low + High) // 2
midVal = lst[midIdx]
if queryVal == midVal:
return midIdx
elif queryVal < midVal:
return __bSearch(lst, Low, midIdx - 1, queryVal)
else:
return __bSearch(lst, midIdx + 1, High, queryVal)
return __bSearch(lst, 0, len(lst), val)
lst = list(range(10))
print(bSearch(lst,3))