Uma função recursiva chama a si mesma como parte do processo computacional. Apesar de recursão pode ser difícil de entender no início , uma profunda compreensão de como ele funciona pode melhorar sua capacidade como programador Java. A recursão é especialmente útil no desenvolvimento de algoritmos porque muitos conceitos em matemática e ciência da computação , naturalmente se prestam a ser expressa de forma recursiva. É por isso que é importante para um programador Java para saber como incluir a recursividade em seu programa quando ela é necessária. Instruções
1
Determinar se a recursividade é adequado para sua necessidade. Você deve ser capaz de expressar o processo computacional envolvido na resolução de seu problema em termos de chamadas repetidas para si mesmo. Um exemplo popular é o cálculo fatorial que é o resultado da multiplicação de uma série de números até "N" e pode ser expressa como um cálculo recursivo.
2
Decida que você pode aplicar a dividir-e conquistar estratégia para resolver o seu problema . Por exemplo , o método de " classificação rápida ", que se baseia no cálculo recursivo durante o processo de triagem . De maneira similar , você deve ser capaz de dividir o seu problema em partes menores e processá-los de forma recursiva.
3
Criar o método Java que você vai chamar de forma recursiva. Verifique se o seu método de Java contém todos os seis componentes necessários , ou seja, o modificador , tipo de retorno , nome do método , lista de parâmetros , lista de exceção e do corpo do método .
Por exemplo, a linha a seguir define um método chamado de " quicksort () " que aceita uma matriz para ser classificado junto com os índices de esquerda e direita :
vazio quicksort (int arr [], int esquerda, int direita) {}
4
Certifique-se de incluir a chamada a si mesmo dentro do método que contém o cálculo recursivo. Por exemplo, dentro do método " quicksort ()" , as seguintes chamadas para mais " quicksort ()" métodos podem ser encontrados :
int index = partição (arr , esquerda, direita );
if ( esquerda < índice - 1)
quicksort (arr , à esquerda, o índice - 1) ;
if ( index < direita)
quicksort ( arr, índice, à direita) ;
os parâmetros passados para a chamada recursiva posterior tem de ser menor do que os anteriores. Este é um elemento essencial na estratégia de dividir para conquistar.
5
Teste a chamada de função recursiva. Você pode definir uma classe para testar a sua recorrência e um método " main () " dentro dele para ligar para a função recursiva e garantir que ele funciona corretamente. Por exemplo :
classe recursão {
public static void main ( String args [] ) {} }