Saltar al contenido

Módulo 2: Funciones › Recursión: muñecas rusas

Módulo 2 · lección 3

Recursión: muñecas rusas

Una función que se usa a sí misma, hasta el caso base.

✓ Lección terminada

Lambda, la máquina de jugosλ

¿Cómo se repite algo sin ciclos? En programación funcional, una función puede usarse a sí misma con un problema un poco más pequeño. Eso se llama recursión.

Piensa en las muñecas rusas: abres una y adentro hay otra más pequeña, y otra, hasta llegar a la más chiquita, que ya no se abre. Esa última es el caso base.

El factorial

El factorial de 4 es 4 × 3 × 2 × 1 = 24. Se puede decir así: el factorial de n es n por el factorial de n − 1, y el factorial de 0 es 1 (el caso base).

Ejecuta y mira las muñecas: cada llamada abre una muñeca dentro de la anterior. Cuando se llega al caso base, las muñecas se cierran una por una, de adentro hacia afuera, devolviendo su resultado.

Factorial con muñecas

Cargando…

¿Te acuerdas de la pila de llamadas de BitCPU? Cada muñeca abierta es un CALL que todavía no hizo su RET.

Piensa

Cargando…

Para pensar

  1. ¿Qué fue fácil?
  2. ¿Qué fue difícil?
  3. ¿Otro paradigma lo habría resuelto mejor? ¿Cuál y por qué?