Si tiene en cuenta estos puntos siguientes, puede ser útil cuando encuentre algún código de recursión.
- Comprender la recursividad es un poco más difícil que simplemente leer el código. Tienes que ejecutar literalmente el código en tu mente mientras lo lees.
- En la recursión, debe tener en cuenta que también está utilizando el Registro de activación (estructura de datos que compone una pila de llamadas, en términos simples Pila) para resolver su problema.
- Piense en ello como una reacción en cadena , y debería terminar en algún lugar, ¿verdad? de lo contrario nunca se detendrá. Llega el papel de caso base . Es el caso para el cual su función ya sabe la respuesta.
- La recursión primero diverge y luego converge, es decir , primero comienza la reacción en cadena y llega a su caso base (para el cual ya conoce la respuesta), este es el punto final de la reacción. Ahora usa el resultado de todas las reacciones de la subcadena y llega al (primer) estado original desde donde comenzó.
Intenta aplicar este aprendizaje en algunos problemas.
- Generando series de Fibonacci
- Transversal del árbol
Esperemos que esta información te ayude cada vez que veas una función recursiva. ¡Gracias!
- ¿Qué algoritmo es bueno para fusionar notificaciones similares en los servicios sociales?
- ¿Cuál es la mejor estructura de datos para almacenar y realizar una adición de dos números grandes de 512 bits?
- ¿Cuáles son los mejores proyectos de estructura de datos para los estudiantes?
- ¿Puede [math] \ sqrt {n} ^ 2 = -n [/ math]?
- ¿Cómo podría un algoritmo que crea un cambio en el comportamiento del consumidor crear valor?