Core idea
The algorithm moves from left to right and treats the beginning of the array as an already sorted segment.
Each new element is compared with previous values and shifted left until it reaches the correct insertion point.
It is simple, stable, and especially effective on nearly sorted or very small inputs.