Hoja de ejercicios de Algoritmos y complejidad con soluciones

Hoja de ejercicios de Algoritmos y complejidad gratis e imprimible: 8 problemas desde nivel fácil hasta nivel de examen, con soluciones. Imprímela o guárdala como PDF.

Para docentes: pueden imprimirla, copiarla y usarla en clase gratis. Cada hoja nueva tiene valores nuevos y su propia clave de respuestas. Agradecemos un enlace a ExamProblems en la página de tu curso.

Nombre: ____________________   Fecha: ____________

1.Fácil

¿Cuánto vale log₂ 1024?

  1. A10
  2. B512
  3. C32
  4. D12
2.Fácil

¿Qué es la memoización?

  1. AConvertir automáticamente la recursión en un bucle equivalente para que no haga falta pila de llamadas
  2. BGuardar los resultados de las llamadas a funciones para responder desde memoria a las llamadas repetidas
  3. CEscribir comentarios junto a cada línea de código
  4. DLiberar memoria cuando una función termina
3.Fácil

¿Cuál es la complejidad temporal de la búsqueda binaria en un array ordenado?

  1. AO(n log n)
  2. BO(1)
  3. CO(log n)
  4. DO(n)
4.Media

¿Cuál es el tiempo de ejecución del radix sort LSD sobre n enteros de d dígitos en base k?

  1. AO(n²)
  2. BO(d(n + k))
  3. CO(dn log k)
  4. DO(n log n)
5.Media

¿Cuál es la complejidad temporal amortizada de añadir al final de un array dinámico que duplica su capacidad cuando está lleno?

  1. AO(n²)
  2. BO(log n)
  3. CO(n)
  4. DO(1)
6.Media

¿Qué algoritmo de ordenación es estable?

  1. AOrdenamiento por selección (versión habitual)
  2. BQuicksort (versión in situ habitual)
  3. CHeap sort
  4. DMerge sort
7.Difícil

¿Qué afirmación sobre la notación o pequeña es correcta?

  1. An = o(n), porque toda función es o pequeña de sí misma
  2. Bn² = o(n)
  3. C2n = o(n), porque 2n crece despacio
  4. Dn = o(n²), pero n no es o(n)
8.Difícil

El problema de la mochila 0/1 resuelto con programación dinámica requiere un tiempo O(nW). ¿Por qué se llama pseudopolinómico?

  1. APorque n siempre es pequeño
  2. BPorque el algoritmo es aleatorizado y su tiempo de ejecución varía con cada entrada
  3. CPorque solo funciona para W = 0
  4. DW es un número, así que el tiempo es exponencial en el número de bits empleados para escribir W

Soluciones

  1. 1. A · 10
  2. 2. B · Guardar los resultados de las llamadas a funciones para responder desde memoria a las llamadas repetidas
  3. 3. C · O(log n)
  4. 4. B · O(d(n + k))
  5. 5. D · O(1)
  6. 6. D · Merge sort
  7. 7. D · n = o(n²), pero n no es o(n)
  8. 8. D · W es un número, así que el tiempo es exponencial en el número de bits empleados para escribir W

Soluciones completas paso a paso: practica este tema en examproblems.com.