Repositorio de estudio y práctica para Algoritmos y Programación 1/2.
Este repositorio se hizo con ayuda de inteligencia artificial (Chat GPT 5.3 codex) con el fin de apoyar a cualquier estudiante de la materia, de modo que pueda revisar sus soluciones y comparar. No tomar las soluiones como absolutas, se recomienda cotejar los resultados y si se aporta una mejora es totalmente bienvenida. También se recomienda utilizar cualquier modelo LLM de frontera que pueda mejorar algún programa particular.
Los gráficos dibujados se hicieron utlizando excalisdraw mediante la aplicación Obsidian.
Limitaciones: La clase de árboles AVL está incompleta, faltan los ejemplos de solución de ejercicios de balanceo. De igual manera para las soluciones de parciales de árboles no se registraron las soluciones de balanceo de árboles AVL.
- Estructura general
- Clases de algoritmos (resumen corto)
- Material PDF (clases, ejercicios, guías y parciales)
- Guías de Programación 2
- Librerías principales
- Talleres y casos de prueba
- Pruebas de librerías y ejercicios
- Cómo compilar y ejecutar
- Algoritmos/: apuntes teóricos, clases y ejercicios en pseudocódigo.
- PDF/: material de apoyo (clases, ejercicios, guías, talleres y parciales).
- Programación 2/: librerías C++ y ejercicios/talleres.
- Programación1/: librerías y prácticas en C.
Rutas base de clase:
- Algoritmos 2 Clase 1.md: fundamentos de POO (objeto, clase, abstracción, encapsulamiento, modularidad, jerarquía).
- Algoritmos 2 Clase 2.md: encapsulamiento, modificadores de acceso, interfaz de clase y métodos especiales.
- Algoritmos 2 Clase 3.md: relaciones entre clases (asociación, agregación, composición, herencia y polimorfismo).
- Algoritmos 2 Clase 4.md: estructuras jerárquicas, árboles N-arios/binarios y recorridos.
- Algoritmos 2 Clase 5.md: ABB y AVL, degeneración y rotaciones para balanceo.
- Algoritmos 2 Clase 6.md: grafos, conectividad, representación en matriz/lista y recorridos.
Material de apoyo por tema:
- Clases LPC Algoritmos.md
- Clases Arboles Algoritmos.md
- Clases Grafos Algoritmos.md
- Ejercicios LPC.md
- Ejercicios Arboles.md
- Ejercicios Grafos.md
- Algoritmos 2 Clase 1.pdf
- Algoritmos 2 Clase 2.pdf
- Algoritmos 2 Clase 3.pdf
- Algoritmos 2 Clase 4.pdf
- Algoritmos 2 Clase 5.pdf
- Algoritmos 2 Clase 6.pdf
- Clases LPC Algoritmos.pdf
- Clases Arboles Algoritmos.pdf
- Clases Grafos Algoritmos.pdf
- Ejercicios LPC.pdf
- Ejercicios Arboles.pdf
- Ejercicios Grafos.pdf
- Ejercicios POO.pdf
- Guia Ejercicios Arboles.pdf
- Guia Ejercicios Grafos.pdf
- Reglas de Pseudocodigo Algoritmos.pdf
- GUIA_ENTRADA_ESTANDAR_CPP.pdf
- GUIA_MAKEFILE_C.pdf
- GUIA_MAKEFILE_CPP.pdf
- GUIA_REDIRECCION_STDIN_STDOUT.pdf
- GUIA_STL_CPP.pdf
- PDF/Parciales/: banco de parciales históricos (POO, estructuras lineales, jerárquicas y multienlazadas).
- PDF/Talleres/: banco de talleres históricos.
Rutas principales dentro de Programación 2/guias/:
Ubicación: Programación 2/include/
Importante: Los talleres pueden contener errores. No tomar como solución absoluta.
Las soluciones que se suponen como correctas son 1-2026_asamblea y 1-2026_ultimaOla de LPC y Grafos, respectivamente.
La solución del taller de árboles "rutaDefensa" no es correcta pero se mantuvo como base con dos versiones adicionales hechas con IA: una que mejoró la base manteniendo la lógica y otra O(n).
- Carpeta: Programación 2/talleres_lpc/
- Soluciones:
- Casos nuevos 1-2026:
- Carpeta: Programación 2/talleres_arboles/
- Soluciones:
- Casos nuevos 1-2026:
- Carpeta: Programación 2/talleres_grafos/
- Soluciones:
- Casos nuevos 1-2026:
- LPC:
- Árboles:
Archivo base: Programación 2/Makefile
No hace falta describir las rutas explícitamente en bash si se sobreescriben en el Makefile directamente, es decir, se actualizan las propias rutas ahí en vez de en bash.
Comando de ayuda: make help
Ejemplos:
# Sin modificaciones en bash, sino en el make
make
make run-file
# Compilar un taller puntual
make one SRC_DIR=talleres_grafos EX=2-2025_ordenMundial
# Ejecutar con stdin directo
make run SRC_DIR=talleres_grafos EX=2-2025_ordenMundial
# Ejecutar con archivo de entrada/salida
make run-file SRC_DIR=talleres_grafos EX=2-2025_ordenMundial IN=talleres_grafos/in_2-2025.txt OUT=talleres_grafos/out_2-2025.txtPara más detalle, revisa GUIA_MAKEFILE_CPP.md.