← Lumbre

Estructuras de Datos y Algoritmos · 2.º Ordenamiento comparativo

Portada de Ordenamiento comparativo

Ordenamiento comparativo

✦ No existe ordenar por comparación bajo n log n: es un techo teórico · Estructuras de Datos y Algoritmos · Programación · en menos de 8 minutos

Roadwise Consulting

Firmado y verificado · Biblioteca UNIV

Objetivo: Comparar los algoritmos de ordenamiento por comparación (burbuja, inserción, selección, merge, heap, quick) según costo, estabilidad y memoria, y saber el límite inferior n log n.

8 min Estructuras de Datos y Algoritmos · Programación 18–30 años
Más
Ordenamiento comparativo

Herramientas de la lección

◉ Entrar a La Matrix Sorpréndeme

Sobre este contenido

Ir a

Volver a Estructuras de Datos y Algoritmos · 2.º semestre Cursos Explorar Mi cuenta Salir del modo estudio

Ordenamiento comparativo

Diagrama de estructuras de datos: arbol binario, lista enlazada y tabla hash.
Estructuras de datos fundamentales y analisis de complejidad algoritmica.

Mapa conceptual

  • Estructuras de Datos
    • Lineales
      • Arrays
      • Listas enlazadas
      • Pilas y Colas
    • No lineales
      • Arboles BST
      • Heaps
      • Grafos
    • Hash
      • Funcion hash
      • Colisiones
      • Rehashing
    • Algoritmos
      • Ordenamiento
      • Busqueda binaria
      • BFS DFS
    • Optimizacion
      • Big-O
      • Dinamica
      • Voracidad

Qué es ordenar por comparación

Son algoritmos que solo deciden el orden preguntando «¿es a menor que b?». No explotan el rango de los valores (eso lo hacen counting sort o radix). Su costo se mide en comparaciones e intercambios.

La familia cuadrática

  • Burbuja: intercambia vecinos desordenados hasta que nada burbujee; simple y lento, O(n²).
  • Inserción: toma cada elemento y lo coloca en la parte ya ordenada; O(n²) pero muy bueno con datos casi ordenados o pequeños.
  • Selección: busca el mínimo y lo pone al frente, n veces; siempre O(n²), pocas escrituras.

La familia n log n

  • Merge sort: divide en mitades, ordena y fusiona; O(n log n) garantizado y estable, pero usa memoria extra O(n).
  • Heap sort: monta un heap y extrae extremos; O(n log n) garantizado e in situ, no estable.
  • Quick sort: elige un pivote y particiona; promedio O(n log n), rápido en la práctica, pero con peor caso O(n²) si los pivotes son malos.
Crecimiento: n log n contra n cuadrado

f(x) = x^2 · f(x) = x*(log(x)+1)

Inserción gana en datos casi ordenados; merge cuando importa la estabilidad.
AlgoritmoMejorPromedioPeorEstableMemoria extra
InsercionO(n)O(n2)O(n2)SiO(1)
MergeO(n log n)O(n log n)O(n log n)SiO(n)
HeapO(n log n)O(n log n)O(n log n)NoO(1)
QuickO(n log n)O(n log n)O(n2)NoO(log n)

¿Cuál es el peor caso de quicksort y de qué depende?

¿Por qué n log n es el suelo?

Ordenar n elementos equivale a distinguir entre n! permutaciones posibles. Cada comparación binaria divide el espacio de posibilidades entre dos, así que hacen falta al menos log₂(n!) comparaciones, que por Stirling es Θ(n log n). Ningún algoritmo comparativo puede bajar de ahí.

Estabilidad

Un ordenamiento es estable si conserva el orden relativo de elementos empatados. Importa cuando se ordena por varias claves sucesivas: merge e inserción son estables; heap y quick no.

Merge sort es estable y garantiza O(n log n) en el peor caso.

Elegir en la práctica

  • Datos pequeños o casi ordenados: inserción.
  • Se requiere estabilidad o garantía de peor caso: merge sort.
  • Memoria limitada: heap sort.
  • Velocidad promedio y buen uso de caché: quick sort (o introsort, que combina con heap ante mal pivote).

Errores frecuentes

  • Cotizar quicksort solo por su promedio: su peor caso O(n²) es real si el pivote es adverso.
  • Ignorar la estabilidad al ordenar por claves múltiples.
  • Asumir que O(n log n) «es igual» entre algoritmos: constantes, memoria y locality importan.

Clasifica cada algoritmo por su peor caso:

Arrastra cada ficha a su categoría (o tócala y luego toca la categoría). También puedes usar el teclado.

Video complementario
Recurso audiovisual para reforzar los conceptos.

Tienes que ordenar un millón de transacciones ya casi ordenadas, conservando el orden de registro en empates. ¿Qué algoritmo eliges y por qué? Argumenta con costo, estabilidad y memoria.

Tu texto se guarda sólo en este dispositivo.

Las respuestas y tu progreso se guardan sólo en este dispositivo. Contenido firmado por su autoría mediante Lumbre.
Más sobre esta lección
Explora temas relacionados

Conceptos

Comentarios

Inicia sesión para comentar.

Todavía no hay comentarios. Sé la primera persona en opinar.