From 28ef4678c5b67ef9dfbd51390b698b732d35ea3d Mon Sep 17 00:00:00 2001 From: mahesdwivedi Date: Sun, 7 Oct 2018 01:56:20 +0530 Subject: [PATCH] binary search using python --- code/binary.py | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 code/binary.py diff --git a/code/binary.py b/code/binary.py new file mode 100644 index 0000000..4e63bbf --- /dev/null +++ b/code/binary.py @@ -0,0 +1,34 @@ +def binarySearch(arr, l, r, x): + + while l <= r: + + mid = l + (r - l)//2; + + # Check if x is present at mid + if arr[mid] == x: + return mid + + # If x is greater, ignore left half + elif arr[mid] < x: + l = mid + 1 + + # If x is smaller, ignore right half + else: + r = mid - 1 + + # If we reach here, then the element + # was not present + return -1 + + +# Test array +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 ",result) +else: + print ("Element is not present in array")