Binary Search Explanation
Binary Search Explanation
Move →
🔢 Example
Given Array (Sorted): {2, 5, 8, 12, 16, 23, 38, 56, 72, 91}
Target: 23
🖥️ Java Code
int binarySearch(int[] arr, int target) {
int left = 0, right = arr.length - 1;
while (left <= right) {
int mid = left + (right - left) / 2;
if (arr[mid] == target) return mid;
if (arr[mid] < target) left = mid + 1;
else right = mid - 1;
}
return -1; // Not found
}
Dry Run (Step-by-Step Execution)
Initialization:
= 0 + (9 - 0) / 2
= 4
mid = 5 + (9 - 5) / 2
= 5 + 4 / 2
= 7
mid = 5 + (6 - 5) / 2
= 5 + 1 / 2
= 5
⚡ Final Thoughts
🏎 Fast → O(log n) time complexity