Recursion は、function が同じ問題の小さい version を解くために自分自身を呼ぶことです。すべての recursion には止めるための base case と、base に近づく recursive case が必要です。
考え方
問題を同じ形の smaller subproblems に分解します。各 call は call stack に frame を push し、return で pop されます。
例
python
():
n <= :
n * factorial(n - )
factorial()
