Questão FC266020
Denominação dada quando uma função realiza uma ou mais chamadas a ela mesma. Assinale a alternativa correta.
Algoritmos e Lógica de Programação
IDECAN · 2022
Denominação dada quando uma função realiza uma ou mais chamadas a ela mesma. Assinale a alternativa correta.
- Iteração
- Repetição
- Recursão
- Laço
Mostrar resposta e comentário
Gabarito
Certo
Comentário do professor
Recursão é o mecanismo em que uma função faz uma ou mais chamadas a si mesma para resolver um problema dividindo-o em subproblemas menores.
Uma implementação recursiva tem, geralmente, dois componentes: o caso base, que encerra as chamadas, e a chamada recursiva, que reduz o problema até alcançar o caso base. Sem o caso base, a execução não termina.
Exemplo clássico: o fatorial, definido por \(n! = n \times (n-1)!\) com o caso base \(0! = 1\). A função calcula \(n!\) chamando-se para \(n-1\) até atingir 0.
Durante a execução, cada chamada gera um quadro na pilha de chamadas, por isso recursão consome memória proporcional à profundidade; chamadas excessivas podem causar estouro de pilha.
Vantagens: código frequentemente mais simples e direto para problemas naturalmente recursivos (árvores, divisão e conquista). Desvantagens: overhead de chamadas e, às vezes, menor eficiência sem memoização.
Quando possível, use recursão de cauda para otimizar memória (adaptada por alguns compiladores/interpretadores) ou transforme em iteração para evitar limites de pilha.
Conteúdo do catálogo FC Concursos · Atualizado em