Recursividade
Resenha: Recursividade. Pesquise 862.000+ trabalhos acadêmicosPor: mluizmarcelo • 9/6/2013 • Resenha • 335 Palavras (2 Páginas) • 338 Visualizações
Muitas vezes ouvimos que a iteratividade é melhor que a recursividade. Outras, ouvimos o contrário. Há muitos entusiastas e fanáticos, em ambos campos. Mas eis que iremos esclarecer as diferenças!Primeiro: Iteratividade é melhor que recursividade, quando estamos analisando desempenho. A legibilidade de códigos iterativos requer alguma experiência do programador, principalmente em códigos maiores, com muitos laços aninhados.
Segundo: Recursividade confere ao código maior legibilidade, tornando mais simples sua compreensão. Para pequenas aplicações, muitas vezes a recursividade apresenta perda tolerável de desempenho. Existem ainda técnicas, como memoizing (catching), que podem equiparar a compexidade algoritmica ao programa iterativo.
Terceiro: Se a iteratividade é sempre melhor, embora menos legível, então por que usar recursividade, uma vez que o importante em um programa é prioritariamente o desempenho? A esta pergunta, podemos responder da seguinte forma: vivemos em um mundo “incompleto”, ou seja, que não pode ser completamente representado computacionalmente. Isto significa que, em alguns casos, é tão difícil fazer a modelagem iterativa que optamos por segmentar o problema em funções e usar recursão. Há outras vantagens do uso de recursão, como o processamento paralelo, a organização, e desvantagens como alto consumo de recursos.
Fonte:http://dietkx.wordpress.com/2009/03/09/recursividade-x-iteratividade/
Na matemática e na ciência da computação, a recursão especifica (ou constrói) uma classe de objetos ou métodos (ou um objeto de uma certa classe) definindo alguns poucos casos base ou métodos muito simples (freqüentemente apenas um), e então definindo regras para formular casos complexos em termos de casos mais simples.
Por exemplo, segue uma definição recursiva da ancestralidade de uma pessoa:
Os pais de uma pessoa são seus antepassados (caso base);
Os pais de qualquer antepassado são também antepassados da pessoa em consideração (passo recursivo).
É conveniente pensar que uma definição recursiva define objetos em termos de objetos “previamente definidos” dessa mesma classe que está sendo definida.
Definições como esta são frequentemente encontradas na matemática, por exemplo, a definição formal dos números naturais diz que 0 (zero) é um número natural, e todo número natural tem um sucessor, que é também um número natural.
...