Mental Model
We guess an answer and check if it works, then adjust the guess up or down until we find the best answer.
Analogy: Imagine guessing the weight of a box by trying different weights on a scale. If the guess is too heavy, you try lighter weights; if too light, you try heavier weights until you find the exact weight.
low = 0 mid = ? high = max Check if mid is valid -> adjust low or high [low] ---- [mid] ---- [high]
