Basically, binary search performer classic binary nature of element to find target element to make search successful. When we find some element in given list or data, if we have some information about how the data/list is arranged, would help us to find data faster using b-search(Binary Search).
Source: Rohit kanyal.
Using the different condition to find elements in searching element in give data/list. As discussed in early articles about recursion, we can straight forwardly used recursion b-search to get our desired output. The idea is simple:
Steps Following:
This is an example of divide-and-conquer algorithm.
def binarySearch(arr, l, r, x):
if r >= l:
mid = l + (r - l) // 2
if arr[mid] == x:
return mid
elif arr[mid] > x:
return binarySearch(arr, l, mid-1, x)
Binary Search to Find Data on Web.
else:
return binarySearch(arr, mid + 1, r, x)
else:
# Element is not present in the array
return -1
arr = [2, 3, 4, 10, 40] x = 10
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")