Programação  
 
Conhecimento computador >> Programação >> C /C + + programação >> 
Função recursiva em C
Um conceito pouco usado em C é função de recursão. Uma função recursiva é simplesmente uma função que chama a si mesmo . Funções recursivas podem ser úteis em certas funções , mas geralmente pode ser substituído usando uma malha . Objetivo da Função recursiva

Uma função recursiva pode ser usado quando uma operação precisa ser executada repetidamente em um conjunto de dados. Por exemplo, uma função recursiva pode executar repetidamente uma operação matemática em um valor numérico até que uma condição seja atendida.
Criando uma função recursiva

Qualquer função que chama a si mesma é uma função recursiva . Não existem requisitos especiais para a função de chamar-se , que pode fazê-lo como cait chamaria qualquer outra função . Como exemplo , o seguinte é uma função recursiva para calcular o próximo número em uma seqüência de Fibonacci :

longo fib ( long n)

{

if ( n < = 2) {


retornar 1 ;

}

mais

{

retorno fib (n - 1) + fib ( n - 2);

} }



problemas com recursão

recursão tem vários problemas possíveis que devem ser considerados antes de escrever uma função recursiva . Funções recursivas pode ser muito ineficiente , não só existe uma sobrecarga de pilha de chamar repetidamente a função , funções recursivas pode facilmente acabar com tempos de execução exponencial , dependendo de como eles são escritos . Funções recursivas também corre o risco de causar um estouro de pilha se o número de chamadas recursivas é muito alto.
Recursão Vs . Iteração

maioria das funções recursiva pode ser implementado como uma função não - recursiva que utiliza um ciclo iterativo . Isso tende a ser mais eficiente e mais seguro, mas em alguns casos pode ser mais difícil de escrever e de ler.

Funções recursivas são mais frequentemente utilizados durante a navegação com estrutura de árvore , ou quando usar iteração faria o funcionar muito mais complexa. Na maioria dos outros casos , a iteração deve ser usado em seu lugar.

Anterior :

Próximo : No
  Os artigos relacionados
·Como executar C + + arquivos no bloco de notas 
·Como verificar se duas matrizes têm os mesmos elemento…
·Como converter XML para Enum 
·Como mover um ponteiro de arquivo em C + + 
·Como fazer um buffer Hex Do Char C 
·Como criar um projeto Maven no Galileo 
·Como calcular interseção Circles em C + + 
·O que é o oposto de impressão em Programação C 
·Objetivo Questionamento em C Programação 
·Como compilar um CPP em DOS 
  Artigos em destaque
·Como converter uma String para um gráfico em C + + 
·Como criar DropDownList com chave de pesquisa em C 
·Como usar Int para obter o código de cor RGB 
·Funções de primeira classe em Python 
·Como programar Cacau em um iPhone 
·Como verificar se uma matriz tem valor ou não em C + +…
·Como fechar programas iPad com Xcode 
·Como compartilhar variáveis ​​ao longo CPP 
·Definição de Abstração de Dados em C + + 
·O que é a sintaxe estrutural ou Estrutura de Programaç…
Cop e direita © Conhecimento computador http://ptcomputador.com Todos os Direitos Reservados