Caché
Python · Unidad 21: Python avanzado
- Plan completo
- Python
- 8 ejercicios
Una función recursiva puede repetir el mismo trabajo muchísimas veces. Para verlo, anota cada llamada en una lista y cuenta cuántas hubo.
fib(6) solo tiene siete números detrás, pero mira las llamadas.
llamadas = []
def fib(n):
llamadas.append(n)
if n < 2:
return n
return fib(n-1) + fib(n-2)
print(fib(6), len(llamadas))Imprime
8 25
El resto de la explicación está en la lección, que es del plan completo.
Ejercicios de esta lección
Se hacen en la app, que los corrige al momento y explica por qué.
1. Predice la salida
¿Qué imprime este código?
2. Predice la salida
En
hechosse anota cada cuenta que de verdad se hizo.3. Completa el código
Completa la revisión del caché.
4. Predice la salida
En
vistosse anota cada vez que el cuerpo defibllega a correr.5. Encuentra el bug
Debería imprimir 8 y 8, porque la segunda vez sale del caché. ¿Qué línea tiene el error?
6. Opción múltiple
¿Por qué
@cachees mala idea en esta función?7. Encuentra el caso que falla
cuantos(x)debería decir cuántos elementos tienex, sea un texto o una lista. ¿Con cuál llamada truena?8. Ordena las líneas
Ordena para contar de cuántas formas se sube una escalera de n escalones, subiendo de 1 o de 2.
Se abre en el navegador. Esta lección es del plan completo; la primera unidad de cada curso es gratis.