Pensamento Computacional - Tópicos Adicionais

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar

1 Conceito de Recursividade

Determinados problemas podem ser resolvidos de forma muito elegante e compacta usando o conceito de recursividade.

A recursividade acontece quando um método chama a ele mesmo resolvendo um determinado problema para um subconjunto de dados. Um bom exemplo de solução com recursividade é o problema de calcular o fatorial. Observe que o fatorial de 5, por exemplo, é:


  5!=5×4×3×2×1

Por sua vez, podemos reescrever da seguinte forma:

  5!=5×4!
  4!=4×3!
  3!=3×2!
  2!=2×1!
  1!=1

Observe se tivermos um método para o cálculo de fatorial de n, então ele pode se "autoinvocar" para calcular para n-1. Vamos a um exemplo: