Posts

Showing posts with the label Algorithms

Binary Search: Binary Search, Efficient Algorithms, Advanced Applications

Image
How Binary Search Works Initial Setup : Start with two pointers, low and high , which represent the bounds of the search interval. Initially, low is set to 0, and high is set to the length of the array minus one. Middle Element : Calculate the middle index mid of the current interval. The middle index is computed as mid = (low + high) // 2 . Comparison : If the middle element arr[mid] is the target value, the search is complete, and the index mid is returned. If the target value is less than arr[mid] , adjust the high pointer to mid - 1 . If the target value is greater than arr[mid] , adjust the low pointer to mid + 1 . Repeat : Repeat steps 2 and 3 until the low pointer exceeds the high pointer. If the target value is not found, return -1 to indicate that the value is not in the array. Binary Search Algorithm in Python Here is the Python implementation of binary search: python def binary_search ( arr, target ): low = 0 high = len (arr) - 1 while low <