Saltar al contenido

# algoritmos-avanzados-en-python

Algoritmos Avanzados en Python

Volver a la portada del curso
Quiz

Quiz sobre optimización

Sección 3 · Optimización y eficiencia

5 preguntas de opción múltiple. Aprobar con 80%. Intentos ilimitados.

  1. 1. Para detectar ids repetidos en 2000 pedidos, un doble ciclo hace 1,999,000 comparaciones y la versión con set hace 2000 operaciones. Si los pedidos se duplican a 4000, ¿qué se espera de cada versión?

  2. 2. Un programador reemplaza el set vistos por una lista en la detección de repetidos: «if x in vistos: ...; vistos.append(x)». ¿Qué pasa con la complejidad?

  3. 3. La búsqueda lineal en 100,000 SKUs hace 1 comparación en el mejor caso, 100,000 en el peor y unas 50,526 de media. ¿Cómo se clasifica su caso promedio?

  4. 4. fib(30) ingenuo hace 2,692,537 llamadas; con @lru_cache se calculan solo 31 valores distintos. ¿De dónde sale el ahorro?

  5. 5. Para la camioneta de 50 kg, elegir paquetes por mayor valor/peso da 10,231 MXN, mientras la programación dinámica da 10,581 MXN con 770 estados. ¿Qué muestra esta comparación?