Algoritmos e Estruturas de Dados/Recursividade: diferenças entre revisões

[edição não verificada][edição não verificada]
Conteúdo apagado Conteúdo adicionado
Master (discussão | contribs)
Sem resumo de edição
adequação do algoritmo apresentado às regras de sintaxe do wikilivro
Linha 11:
Relações de recorrência são equações que definem uma ou mais seqüências recursivamente. Alguns tipos específicos de relações de recorrência podem ser “resolvidos” para que se obtenha uma definição não-recursiva.
 
Um exemplo clássico de recursão é a definição dado funçãocálculo do fatorial de um número, dada aqui emno algoritmo a pseudocódigoseguir:
 
ALGORITMO: Fatorial(n)
ENTRADA: inteiro n
funçãoSAÍDA: fatorial(n) de n
REQUISITOS: n >= 0
{
SE se (n <= 1)
retorneRETORNE 1;
SENÃO
retorneRETORNE n * fatorialFatorial(n-1);
 
função fatorial(n)
{
se (n <= 1)
retorne 1;
senão
retorne n * fatorial(n-1);
}
 
A função chama a si mesma recursivamente em uma versão menor da entrada (n - 1) e multiplica o resultado da chamada por n, até que alcance o caso base, de modo análogo à definição matemática de fatorial.