diff --git a/Binary Search/16123004.py b/Binary Search/16123004.py index c2eabcf..4c01cae 100644 --- a/Binary Search/16123004.py +++ b/Binary Search/16123004.py @@ -1,7 +1,36 @@ -l = [ 2,3,4,5,6,8] - -n = len(l) -for i in n: - # TODO Fill Code here - - +def binarySearch (arr, l, r, x): + + # Check base case + if r >= l: + + mid = l + (r - l) // 2 + + # If element is present at the middle itself + if arr[mid] == x: + return mid + + # If element is smaller than mid, then it + # can only be present in left subarray + elif arr[mid] > x: + return binarySearch(arr, l, mid-1, x) + + # Else the element can only be present + # in right subarray + else: + return binarySearch(arr, mid + 1, r, x) + + else: + # Element is not present in the array + return -1 + +# Driver Code +arr = [ 2, 3, 4, 10, 40 ] +x = 10 + +# Function call +result = binarySearch(arr, 0, len(arr)-1, x) + +if result != -1: + print ("Element is present at index % d" % result) +else: + print ("Element is not present in array")