Recursão tem os seus downsides tambem, deve ser evitado ao maximo especialmente em ambientes com pouca memoria RAM como micro controladores, porque ocupa muito espaço na stack e vcpode ter um stack overflow, tente sempre substituir por for loops, no final vc vai ter uma função mais simples e mais performática

Acho que foi falado na postagem original que ela não é tão boa quanto alguns acham e que deve ser evitada quando for possível e for uma situação que ela não é bem aplicada. E o probelma nem é a questão de memória

O problema dela não é ter pouca memória. Você pode ter vários terabytes e ter problema. Se não tiver otimização de recursão em cauda, e em muitos casos isso não existe, pode estourar a pilha de execução porque cada "iteração" aloca memória, o que não aconteceria em modo iterativo real. Então o tamanho da pilha é que se torna um problema, mesmo com muita memória. O padrão do WIndows costuma ser 1 megabyte para cada thread criada. Mas em algumas tecnologias a criaça~ode novas threads pode ser já menor, e quem está programando pode pudar para qualquer lado. Já vi casos de 4 gigabytes, e dá para ser maior. Mas aumentar o tamanho da stack não é a solução real e definitiva para uso errado da recursão, mesm oque a memória RAM permita.

Faz sentido para você?

Espero ter ajudado.


Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente. Para saber quando, me segue nas suas plataformas preferidas. Quase não as uso, não terá infindas notificações (links aqui).

Muuuito obrigado pelas referências, baita complemento ao artigo e a baita resposta sensei @maniero!

Concordo totalmente @coffeeispower! Recursão não é um mundo colorido e quem utilizar tem que ter completa ciência do que está fazendo para evitar efeitos colaterais, bugs e vários outros possíveis problemas quando não se usa de forma diligente. Muito obrigado pelo comentário!!!