Recursividade - Usar ou não usar?
Olhando a estatística de visitas no blog, percebi, que muitas pessoas visitaram, com a seguinte pesquisa “recursividade” e eu tinha falado antes que abordaria o assunto, então trago à tona esse assunto, recursividade é uma técnica que trata-se da função chamar ela própria. exemplificando:
Function fatorial( n )
{
if( n==0 )
return 1;
else
return n * factorial(n-1);
}
No exemplo acima, irá ser feito o cálculo da fatorial do número n, ao invés de usarmos um comando de repetição, faz-se várias chamadas dela mesma. Recursividade usa mais memória, pois está chamando a própria função várias vezes. Claro que em um exemplo como esse, você utilizaria um comando de repetição, mas há situações as quais o uso recursivo da função vai cair como uma luva.
Tem que tomar-se o cuidado de terminar a recursividade.
Qualquer dúvida é só postar.
Fuiii...
Function fatorial( n )
{
if( n==0 )
return 1;
else
return n * factorial(n-1);
}
No exemplo acima, irá ser feito o cálculo da fatorial do número n, ao invés de usarmos um comando de repetição, faz-se várias chamadas dela mesma. Recursividade usa mais memória, pois está chamando a própria função várias vezes. Claro que em um exemplo como esse, você utilizaria um comando de repetição, mas há situações as quais o uso recursivo da função vai cair como uma luva.
Tem que tomar-se o cuidado de terminar a recursividade.
Qualquer dúvida é só postar.
Fuiii...
2 Comentários:
No caso da linguagem C em determinados momentos você pode usar estruturas de dados para utilizar a recursividade. Dessa forma você pode colocar os resultados em uma àrvore e até mesmo paginar esta arvore no disco.
Dessa forma você consegue poupar balancear o consumo de mémoria.
Isso mesmo Luciano, usou o exemplo perfeito para utilizar recursividade, em estrutura tipo árvores é o ideal.
Obrigado pelo comentário!
Postar um comentário
Assinar Postar comentários [Atom]
<< Página inicial