Classic Binary Search

Finding an exact target in a sorted array.

Given a sorted array and a target, find the index of the target or return 1-1 if not found.

Example: Find 77 in [1,3,5,7,9,11,13][1, 3, 5, 7, 9, 11, 13].

1.1. low=0low = 0, high=6high = 6, mid=3mid = 3. arr[3]=7arr[3] = 7. Found!

Example: Find 66 in the same array.

1.1. mid=3mid = 3, arr[3]=7>6arr[3] = 7 > 6. Search [0,2][0, 2].

2.2. mid=1mid = 1, arr[1]=3<6arr[1] = 3 < 6. Search [2,2][2, 2].

3.3. mid=2mid = 2, arr[2]=5<6arr[2] = 5 < 6. Search [3,2][3, 2].

4.4. low>highlow > high. Not found. Return 1-1.

Each comparison eliminates half the remaining elements.