3. O A recursividade trabalha de forma similar a um laço de
repetição, na verdade tudo que fazemos em laço, pode
ser feito em recursividade. A recursividade é nada mais
nada menos do que uma função dentro da outra e ela
deve ser pensada como uma pilha (estrutura de dados
onde o ultimo a entrar, deve ser o primeiro a sair). A
estrutura dela consiste em descer até a base fazendo
os cálculos ou rotinas de cada instrução, e então da
base até o topo da pilha são empilhados os resultados
de cada instrução e no final o topo contém o resultado
que é retornado.
4. O Recursividade em Java
O A recursão é utilizada quando queremos
resolver um subproblema do mesmo tipo
menor.
Se o problema é pequeno
O Então resolva o problema diretamente
O Senão
O Reduza o problema em um problema menor,
chame novamente o método para o problema
menor e volte ao problema original.
5. O Um programa recursivo é um programa que chama a si
mesmo, direta ou indiretamente.
O Vantagens: Redução do tamanho do código fonte ◦
Permite descrever algoritmos de forma mais clara e
Concisa
O Desvantagens; Redução do desempenho de execução
devido ao tempo para gerenciamento de chamadas
Dificuldades na depuração de programas recursivos,
especialmente se a recursão for muito profunda