Esta gravação apresenta uma compreensão profunda dos seguintes conceitos relacionados à recursão Java:
Então vamos começar!
O que é recursão em java
Geralmente, testemunhamos uma função chamando outra função ou funções. No entanto, uma função recursiva se chama repetidamente. Os trechos abaixo do rumo retratam como um método normal difere de um método recursivo.
Sintaxe básica da função normal
Public Void FirstFunction ()O trecho acima mostra como uma função normal definida pelo usuário parece eu.e. tem poucas declarações (código) e chama uma função nomeada SecondFunction ().
Sintaxe básica da função recursiva
Agora, vamos dar uma olhada no trecho abaixo do rolo para entender como uma função recursiva parece:
Public Void FirstFunction ()Considere a figura abaixo para entender como a função recursiva acima funcionará:
A figura acima mostra que a função está se chamando continuamente.e. Um cenário de loop infinito ocorre. Agora você deve estar se perguntando se a função está se chamando continuamente, então como ela parará? Bem! Temos que definir os critérios de rescisão para interromper essa função em algum momento.
Haltening/Termination Condition
Por enquanto, está claro que deve haver uma condição que controla o fluxo da função recursiva. Em termos programáticos, a condição que impede a função a se chamar é referida como a condição de parada ou caso base.
A sintaxe da função recursiva com a condição de interrupção será algo assim:
public void functionName ()A condição de parada pode ser qualquer condição, dependendo das diferentes circunstâncias.
Exemplos de recursão de java
Esta seção fornecerá uma compreensão detalhada de como a função recursiva funciona com o caso base em java.
Exemplo
O snippet abaixo-dado pega um número do usuário e encontra o fatorial desse número:
classe pública FatorialClassNo trecho de código acima, a condição if-else é usada para interromper a recursão quando "num" se torna igual a "0".
public static void main (string [] args)No método principal, estamos buscando o número do usuário, verificando que o número é válido ou não, e se o número for válido, ligue para o FindFactorial () método. Todo o código gerará a seguinte saída:
A saída autentica a função recursiva está funcionando corretamente e calculou o fatorial de 6 corretamente.
Conclusão
Em Java, um processo em que uma função se chama repetidamente, é chamada de função/método recursivo Enquanto todo o processo é conhecido como recursão. Um estojo base/parada deve ser definido nas funções recursivas para interromper a recursão em algum momento, caso a função nunca pare e se chama um número ilimitado de vezes. Este artigo elabora o que é recursão, a diferença entre a função normal e recursiva e como criar funções recursivas em Java.