En informática , una llamada al método recursivo es un método que se llama a sí misma durante el proceso de cálculo. El lenguaje de programación Java soporta recursión como parte de su sintaxis de programación . Aunque puede ser difícil para los principiantes de los programadores de Java a comprender , escribir métodos recursivos con frecuencia permite que los conceptos matemáticos que se expresa claramente en el programa. Por esta razón , es importante para los programadores de Java a entender cómo usar la recursividad y sus limitaciones. Instrucciones
1
determinar si el proceso de cálculo a realizar se presta a la recursividad o no. Es importante que el proceso de cálculo en el método se puede reducir a una llamada repetida a sí mismo.
Uno de los cálculos de recursión populares es el proceso de determinar el factorial de un número . El factorial de un número N es el resultado de multiplicar todos los números de 1 a N en sí . Por ejemplo , utilizando la multiplicación directa :
factorial ( 3 ) = 3 * 2 * 1 = 6 personas
Sin embargo , se obtiene el mismo resultado cuando se ve de forma recursiva :
Factorial ( 3 ) = 3 * factorial ( 2 ) = 3 * 2 * factorial ( 1 ) = 3 * 2 * 1 = 6
Observe que cada paso sucesivo se refiere al mismo proceso, pero en términos más simples .
Página 2
declarar el método Java que se realice el cálculo recursivo. Un método suele tener , al menos, el modificador , el tipo de cambio, los nombres de los métodos y la lista de parámetros correspondiente. El nombre del método normalmente comienza con una palabra verbal minúsculas. Por ejemplo , la siguiente línea define un método llamado " hecho ()" que acepta un valor entero de n y devuelve su factorial :
hecho int ( int n ) { }
< br > 3
Asegúrese de que en el cuerpo del método recursivo , el cálculo se realiza haciendo una llamada a sí misma . Asegúrese de que existe una condición de terminación de la llamada recursiva , así , de lo contrario el método se ejecutará indefinidamente sin parar. Por ejemplo , la siguiente línea calcula la factoria de un determinado número n por llamar sucesivamente en sí para llevar a cabo el mismo cálculo con un valor más simple de n - 1 .
Hecho de int ( int n ) {
< p > int resultado ;
if ( n == 1 ) return 1 ;
resultado
= hecho (n- 1 ) * n ;
resultado devuelto
;
< p > }
Cuando n - 1 es igual a 1 , se devuelve el valor de 1 . Esta es la condición de terminación del cálculo recursivo.
4
Llame al método recursivo para probarlo. Por ejemplo , la siguiente línea llama al método " hecho ()" al pasar un valor de 3 para imprimir en la consola:
System.out.println ( " factorial de 3 es" + f.fact ( 3 ));
Asegúrese de que el mensaje " factorial de 3 es 6 " se imprime en la pantalla
.