Reportes
  • Inicio
  • Unidad 1
  • Unidad 2
  • Unidad 3
  • Unidad 4
  • Unidad 5
  • Cambios implementados

Contenido

  • Acerca del sitio
  • Unidad 1: Análisis de Crecimiento Algorítmico
  • Unidad 2: Estructuras de Datos y Álgebra Lineal
  • Unidad 3: Algoritmos de Ordenamiento
  • Unidad 4: Algoritmos de Búsqueda por Comparación
  • Unidad 5: Intersección y Unión de Conjuntos Ordenados

Análisis de algoritmos 2025-1

Acerca del sitio

Este sitio web académico reúne una colección de reportes experimentales desarrollados como parte del curso Análisis de algoritmos 2025-1. Cada unidad contiene análisis comparativos de distintos enfoques algorítmicos, aplicados a problemas clásicos de la computación como ordenamiento, búsqueda, operaciones matriciales e intersección de conjuntos.

Los reportes incluyen:

  • Implementaciones desde cero en Python
  • Simulaciones controladas con conjuntos de datos
  • Visualizaciones con gráficas, tablas y mapas de calor
  • Evaluación teórica y empírica del desempeño algorítmico

El objetivo es ofrecer una visión práctica, crítica y completa del comportamiento de los algoritmos bajo distintos escenarios, para fortalecer el criterio técnico en la elección de estructuras y estrategias de programación.


Unidad 1: Análisis de Crecimiento Algorítmico

Este reporte explora y compara visualmente distintos órdenes de crecimiento (como O(1), O(log n), O(n log n), O(n²), O(n!), etc.) mediante simulaciones en Python. Se generan gráficas y tablas para ilustrar cómo cada función crece con el tamaño de la entrada, analizando también el impacto en tiempos de ejecución y costos computacionales.

Ir al reporte de la Unidad 1


Unidad 2: Estructuras de Datos y Álgebra Lineal

En este estudio se comparan dos métodos clásicos del álgebra lineal computacional: la multiplicación de matrices y la eliminación gaussiana (y su variante Gauss-Jordan). Se evalúan en términos de operaciones realizadas y tiempo de ejecución en matrices aleatorias de diferentes tamaños, identificando en qué contextos es más eficiente cada enfoque.

🔗 Ir al reporte de la Unidad 2


Unidad 3: Algoritmos de Ordenamiento

Este reporte presenta la implementación y evaluación de cinco métodos de ordenamiento: Heapsort, Mergesort, Quicksort, Bubblesort y ordenamiento con SkipList. Se analiza el rendimiento de cada algoritmo con diferentes niveles de desorden en los datos, considerando tanto el número de comparaciones como el tiempo requerido.

🔗 Ir al reporte de la Unidad 3


Unidad 4: Algoritmos de Búsqueda por Comparación

Se estudian distintas estrategias de búsqueda: secuencial, binaria acotada, búsquedas no acotadas (B1, B2) y mediante SkipList. El análisis incluye datos perturbados y ordenados, evaluando el desempeño con métricas como tiempo y número de comparaciones. Se discute la aplicabilidad de cada técnica según el tipo de datos.

🔗 Ir al reporte de la Unidad 4


Unidad 5: Intersección y Unión de Conjuntos Ordenados

Este documento compara algoritmos para calcular intersecciones de conjuntos ordenados: Melding, Baeza-Yates (con bisección, B1, B2) y Barbay-Kenyon. Se aplican sobre pares, tripletas y tetrapletas de listas para evaluar tiempo, comparaciones y tamaño de la intersección, utilizando gráficos boxplot para representar resultados.

🔗 Ir al reporte de la Unidad 5


© 2025 David Segundo García