La técnica de programación de un programa que se llama en sí misma se llama recursión. La recursión se usa ampliamente como algoritmo en los lenguajes de programación. Un proceso o función tiene un método para llamarse directa o indirectamente en su definición o descripción. Por lo general, convierte una capa de problema grande y compleja por capa en un problema más pequeño similar al problema original para resolver. La estrategia recursiva solo requiere un pequeño número de programas para describir los múltiples cálculos repetidos requeridos para el proceso de resolución de problemas, reduciendo en gran medida la cantidad de código en el programa. La capacidad de la recursión radica en el uso de declaraciones finitas para definir un conjunto infinito de objetos. En términos generales, la recursión requiere condiciones de contorno, segmentos de avance recursivos y segmentos de retorno recursivo. Cuando la condición límite no se satisface, proceda recursivamente; Cuando se satisface la condición límite, el retorno recursivamente. “Esto es lo que dijo la enciclopedia de Baidu.
De hecho, para decirlo sin rodeos, es la operación realizada por el método recursivo en sí mismo que se llama a sí mismo. Déjame darte un ejemplo para ilustrar este ejemplo, que es una secuencia de Fibonacci muy famosa.
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711, 28657, 46368 ...
Se puede ver que el tercer número se obtiene agregando los dos primeros números.
Esto es lo que significa si usa un bucle normal:
clase pública Feibo {public static void main (string [] args) {int num1 = 0; int num2 = 1; int numn = 1; int n = 10; for (int i = 3; i <= n; i ++) {numn = num1+num2; num1 = num2; num2 = numn; } System.err.println (n+"El resultado es:"+numn); }}El resultado de la operación es:
El resultado de 10 números es: 34
Esto es para usar el método de bucle normal para la operación, si usa la recursión, es así:
public static int recursion (int n) {if (n == 1) {return 0; } if (n == 2) {return 1; } recursión de retorno (N-1)+recursión (N-2); }La recursión requiere una condición final, y en el caso la recursión no necesita continuar llamando, terminando la recursión. La condición final del caso anterior es que cuando n = 1 o 2, devuelve 0 o 1, en lugar de continuar llamando al método recursivo en sí.
Las dos condiciones principales para la recursión son llamarse a sí mismo y terminar la recursión.
Debido a que la recursión es llamada por uno mismo, desperdicia muchos recursos, el tiempo de ejecución es mucho más largo que el bucle, el tiempo de ejecución es más lento y la eficiencia es baja.
Lo anterior es todo el contenido de este artículo. Espero que sea útil para el aprendizaje de todos y espero que todos apoyen más a Wulin.com.