From e4c6f0c55ac66e93a91af2512863ab58cfa8f830 Mon Sep 17 00:00:00 2001 From: Mrdecent08 <60995685+Mrdecent08@users.noreply.github.com> Date: Fri, 9 Oct 2020 15:30:42 +0530 Subject: [PATCH] Create Binary_search in python --- Binary_search in python | 67 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 Binary_search in python diff --git a/Binary_search in python b/Binary_search in python new file mode 100644 index 0000000..a8d8724 --- /dev/null +++ b/Binary_search in python @@ -0,0 +1,67 @@ +def binary_search(arr, low, high, x): + + + + # Check base case + + if high >= low: + + + + mid = (high + low) // 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 binary_search(arr, low, mid - 1, x) + + + + # Else the element can only be present in right subarray + + else: + + return binary_search(arr, mid + 1, high, x) + + + + else: + + # Element is not present in the array + + return -1 + + +# Test array + +arr = [ 2, 3, 4, 10, 40 ] + +x = 10 + + +# Function call + +result = binary_search(arr, 0, len(arr)-1, x) + + + +if result != -1: + + print("Element is present at index", str(result)) + +else: + + print("Element is not present in array")