Este repositorio contiene implementaciones de estructuras de datos basadas en el libro Introduction to Algorithms de Cormen, Leiserson, Rivest y Stein (CLRS). Está diseñado como material de apoyo para el curso Algoritmos y Estructuras de Datos de la Escuela de Ciencia de la Computación de la Universidad Nacional de San Agustín de Arequipa.
- Proveer implementaciones prácticas para complementar la teoría presentada en el curso.
- Ayudar a los estudiantes a comprender y aplicar conceptos fundamentales de estructuras de datos.
- Fomentar el aprendizaje mediante ejemplos claros y bien documentados en el lenguaje de programación C.
El repositorio incluye implementaciones de las siguientes estructuras de datos:
- Listas Enlazadas
- Listas enlazadas simples
- Listas doblemente enlazadas
- Listas circulares
- Pilas (Stacks)
- Colas (Queues)
- Árboles Binarios
- Árboles binarios de búsqueda (BST)
- Árboles AVL
- Montículos (Heaps)
- Max-heaps
- Min-heaps
- Grafos (Graphs)
- Representación con listas de adyacencia
- Representación con matrices de adyacencia
Cada estructura de datos se encuentra organizada en un directorio separado con los siguientes componentes:
- Código fuente (
.c) y archivos de cabecera (.h). - Ejemplos de uso en programas demostrativos.
- Documentación básica para entender la implementación.
Para compilar y ejecutar los ejemplos, necesitas:
- Un compilador de C (e.g.,
gcc). - Un editor de texto plano, compatible con C (e.g.
vim) - El programa make