Mental Model
A function calls itself with a smaller number until it reaches 1, then multiplies all those numbers back up.
Analogy: Imagine stacking blocks from 1 up to n. To find the total height, you ask the block below how tall the stack is, then add your own height.
n=4 4! -> 4 x 3! 3! -> 3 x 2! 2! -> 2 x 1! 1! -> 1 (base case)
