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

¿Cómo funciona el ordenamiento por selección?

  1. AIntercambia repetidamente elementos vecinos que están en el orden incorrecto
  2. BInserta cada elemento en una parte ordenada creciente mediante desplazamientos
  3. CDivide el array en mitades y las mezcla
  4. DBusca repetidamente el mínimo de la parte no ordenada y lo intercambia hacia el principio
2.Fácil

¿Qué significa que una operación se ejecute en tiempo O(1)?

  1. ASiempre tarda exactamente un segundo
  2. BSu tiempo de ejecución no crece con el tamaño de la entrada
  3. CProcesa exactamente un elemento por segundo de tiempo de ejecución
  4. DSolo puede ejecutarse una vez
3.Fácil

¿Qué es la recursión?

  1. AUn bucle que nunca termina
  2. BUn tipo de estructura de datos
  3. CUn método de ordenación
  4. DUna función que se llama a sí misma con entradas más pequeñas
4.Media

¿Cuál es la solución de la recurrencia T(n) = 2T(n/2) + O(1)?

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

¿Cuál es la complejidad temporal de: para i = 1 hasta n: (j = 1; mientras j < n: j = j × 2)?

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

La programación dinámica es útil cuando un problema tiene:

  1. ASolo entradas aleatorias
  2. BNingún subproblema en absoluto, así que puede resolverse en un solo paso
  3. CUn único bucle
  4. DSubproblemas superpuestos y subestructura óptima
7.Difícil

¿Por qué la búsqueda media en una tabla hash es O(1) pero el peor caso es O(n)?

  1. ALos arrays tienen acceso O(n)
  2. BLas claves deben ordenarse primero
  3. CMuchas claves pueden colisionar en el mismo bucket
  4. DLas funciones hash son lentas
8.Difícil

El ordenamiento por inserción se ejecuta en O(n) con una entrada ordenada. ¿Contradice esto la cota inferior Ω(n log n) de la ordenación por comparaciones?

  1. ASí, pero solo para arrays de menos de 100 elementos
  2. BSí, así que la cota inferior es errónea
  3. CNo, la cota inferior se aplica al peor caso entre todas las entradas, no a cada entrada
  4. DNo, porque el ordenamiento por inserción no es una ordenación por comparaciones

Soluciones

  1. 1. D · Busca repetidamente el mínimo de la parte no ordenada y lo intercambia hacia el principio
  2. 2. B · Su tiempo de ejecución no crece con el tamaño de la entrada
  3. 3. D · Una función que se llama a sí misma con entradas más pequeñas
  4. 4. B · O(n)
  5. 5. D · O(n log n)
  6. 6. D · Subproblemas superpuestos y subestructura óptima
  7. 7. C · Muchas claves pueden colisionar en el mismo bucket
  8. 8. C · No, la cota inferior se aplica al peor caso entre todas las entradas, no a cada entrada

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