Definição de Recursão:
- Recursão é um método que se chama a si mesmo.
- Um método é recursivo quando contém uma chamada a ele próprio.
Exemplo Clássico:
Cálculo do fatorial é um exemplo clássico de recursão.
O fatorial de um número 𝑁 é o produto de todos os números inteiros de 1 a N
Exemplo de Código:
- Código fornecido mostra um método recursivo (factR) e um método iterativo (factI) para calcular o fatorial.
- Ambos os métodos retornam os mesmos resultados, mas com abordagens diferentes.
Funcionamento do Método Recursivo:
- O método recursivo (factR) chama a si mesmo até que o valor de
- 𝑛 n seja 1.
- A cada chamada recursiva, o método "empilha-se" e só começa a retornar quando a condição base é atingida.
Pilha de Chamadas:
- Cada chamada recursiva aloca espaço na pilha de execução para novos parâmetros e variáveis.
- As chamadas recursivas podem causar saturação de pilha, resultando em exceções.
Comparação com Iteração:
- Métodos recursivos podem ser mais claros e simples para certos algoritmos, como a ordenação rápida.
- No entanto, versões recursivas podem ser mais lentas devido à sobrecarga de chamadas de método.
Cuidados ao Usar Recursão:
- É crucial ter uma condição de término para evitar que o método entre em um loop infinito.
- Instruções de depuração, como println(), podem ajudar a entender o fluxo de execução recursiva.
Código Recursivo para Calcular o Fatorial
VER RECURSION.JAVA
Top comments (0)