Sobes.tech
Intern

O que é recursão?

sobes.tech IA

Resposta da IA

Recursão é o processo pelo qual uma função chama a si mesma. Na programação, uma função recursiva é uma função que se chama direta ou indiretamente. Para evitar um ciclo infinito, a função recursiva deve ter um caso base, que é quando ela para de se chamar.

Exemplos de uso:

  • Percorrer estruturas de dados (por exemplo, árvores).
  • Resolver problemas que podem ser divididos em subproblemas menores do mesmo tipo (por exemplo, calcular fatorial).

Exemplo de cálculo de fatorial usando recursão:

def factorial(n):
  # Caso base: fatorial de 0 é 1
  if n == 0:
    return 1
  # Caso recursivo: fatorial de n = n * factorial de (n-1)
  else:
    return n * factorial(n - 1)

# Exemplo de uso
resultado = factorial(5)
# resultado será 120

Desvantagens da recursão:

  • Pode consumir muita memória devido à pilha de chamadas.
  • Pode ser menos eficiente em comparação com soluções iterativas para alguns problemas.
  • Pode levar a estouros de pilha em chamadas recursivas profundas.