Recursão de cauda — ou como não estourar a pilha
Publicado em 13 nov 2020. Uns 10 minutos de leitura.
Quando precisamos realizar uma operação várias vezes, geralmente existem duas maneiras: iterativa e recursiva. Iterativa é quando utilizamos alguma estrutura de laço, como um for
ou while
, com uma variável de controle para saber quando parar. Recursiva é quando uma função decide executar a si mesma por entender que ainda precisa continuar processando. Toda iteração pode ser escrita como uma recursão e vice-versa. Recursões porém tem um risco associado: o estouro da pilha. Vamos entender o que isso significa e como escrever código recursivo evitando esse problema!