Medio parcial-1

Comparacion de algoritmos de ordenamiento: Merge Sort, Quick Sort y Heap Sort

Fuente: Material del curso — Test: Merge Sort, Quick Sort y Heap Sort (quiz en linea)

merge-sortquick-sortheap-sortcomplejidadestabilidadin-place

Enunciado

Responda las siguientes preguntas sobre algoritmos de ordenamiento avanzados:

1. Cual de los siguientes algoritmos utiliza el paradigma de “divide y conquista” en su diseno principal?

  • a) Solo Merge Sort
  • b) Solo Quick Sort
  • c) Merge Sort y Quick Sort
  • d) Ninguno de los tres

2. Que caracteristica hace que Merge Sort sea preferido cuando se requiere estabilidad en el ordenamiento?

  • a) Su complejidad espacial de O(1)O(1)
  • b) Su capacidad para mantener el orden relativo de elementos iguales
  • c) Su peor caso de O(n)O(n)
  • d) Su naturaleza in-place

3. Cual es la complejidad temporal en el peor caso de Quick Sort?

  • a) O(nlogn)O(n \log n)
  • b) O(n2)O(n^2)
  • c) O(n)O(n)
  • d) O(logn)O(\log n)

4. Que estructura de datos es fundamental para el funcionamiento de Heap Sort?

  • a) Lista enlazada
  • b) Arbol AVL
  • c) Monticulo binario (Heap)
  • d) Cola de prioridad

5. Cual de los siguientes algoritmos es in-place (no requiere memoria adicional significativa)?

  • a) Merge Sort
  • b) Quick Sort
  • c) Ambos, Merge Sort y Quick Sort
  • d) Ninguno de los dos

6. En Merge Sort, cual es el paso clave despues de dividir el arreglo en mitades?

  • a) Eliminar duplicados
  • b) Fusionar (merge) los subarreglos ordenados
  • c) Construir un min-heap
  • d) Reorganizar los elementos alrededor del pivote

7. Por que Quick Sort puede tener un peor caso de O(n2)O(n^2)?

  • a) Porque siempre divide el arreglo en partes desiguales
  • b) Porque el pivote elegido es siempre el menor o mayor elemento
  • c) Porque no es un algoritmo recursivo
  • d) Porque requiere memoria adicional de O(n)O(n)

8. Cual de los siguientes algoritmos tiene una complejidad espacial de O(1)O(1)?

  • a) Merge Sort
  • b) Quick Sort
  • c) Heap Sort
  • d) Ninguno de los tres

9. Que algoritmo garantiza una complejidad de O(nlogn)O(n \log n) en todos los casos (mejor, promedio y peor)?

  • a) Quick Sort
  • b) Merge Sort y Heap Sort
  • c) Solo Quick Sort
  • d) Solo Heap Sort

10. Si necesitas ordenar un arreglo grande y garantizar estabilidad, cual algoritmo elegirias?

  • a) Quick Sort
  • b) Heap Sort
  • c) Merge Sort
  • d) Ninguno de los tres

Para cada pregunta, seleccione la respuesta correcta y justifique brevemente su eleccion.