Recursão é quando uma função chama a si mesma para resolver uma versão menor do mesmo problema. Toda recursão precisa de um caso base que a interrompe e de um caso recursivo que avança em direção à base.
A ideia
Quebre um problema em subproblemas menores e idênticos. Cada chamada coloca um frame na pilha de chamadas (call stack); retornos os removem.
Exemplo
python
():
n <= :
n * factorial(n - )
factorial()
