# BS using recursion
class Solution:
def search(self, nums: List[int], target: int) -> int:
# using recursion
return binarySearch(0, len(nums)-1, nums, target)
def binarySearch(start, end, arr, target):
if start>end:
return -1
mid = start + int((end-start)/2)
if arr[mid] == target:
return mid
elif arr[mid] > target:
return binarySearch(start, mid-1, arr, target)
else:
return binarySearch(mid+1, end, arr, target)