Documente Academic
Documente Profesional
Documente Cultură
Programação em Java
n! = n* (n-1)*(n-2)*(n-3)*...*1
Ex: 5! = 5 x 4 x 3 x 2 x 1 = 120.
◼ Ponto de parada:
if (n == 0) return 1;
◼ Vantagens:
Simplifica a solução de alguns problemas;
Maior compactação;
Melhor legibilidade / facilidade de compreensão;
Maior facilidade de implementação.
Algoritmos recursivos x iterativos
◼ Desvantagens:
Gasto de memória;
Performance inferior;
Limite máximo de chamadas recursivas (depende da
plataforma computacional utilizada).
Erros mais comuns ao escrever
funções recursivas
◼ Seqüência de Fibonacci:
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610,
987, 1597, 2584, 4181, 6765, 10946...
Solução usando uma função recursiva
Programação em Java