Estructura de Datos – Curso completo con teoría, ejemplos y prácticas
En este curso aprenderás a manejar eficientemente la información dentro de un programa, a través de estructuras como pilas, colas, listas, árboles y grafos. Además, exploraremos técnicas esenciales como la recursividad, el análisis de algoritmos y métodos de ordenamiento y búsqueda, que te permitirán escribir código más eficiente y estructurado.
El temario está organizado de forma progresiva. Cada tema cuenta con su propia página donde encontrarás explicaciones detalladas, ejemplos prácticos, videos y ejercicios.
Unidad 1. Fundamentos de las Estructuras de Datos
- 1.1 ¿Qué es una estructura de datos?
- 1.2 Clasificación general: estáticas vs dinámicas, lineales vs no lineales
- 1.3 Tipos de Datos Abstractos (TDA)
- 1.4 Conceptos básicos de análisis de algoritmos (tiempo, espacio y eficiencia)
Unidad 2. Recursividad y Algoritmos Básicos
- 2.1 Recursividad: concepto y cuándo usarla
- 2.2 Ejemplos clásicos: factorial, Fibonacci, torres de Hanói, búsqueda binaria
- 2.3 Comparativa recursivo vs iterativo
Unidad 3. Estructuras Lineales
- 3.1 Pilas (Stacks)
- Concepto, implementación, operaciones y aplicaciones (paréntesis, backtracking)
- 3.2 Colas (Queues)
- Simples, circulares, prioridad, doble cola (deque)
- 3.3 Listas Enlazadas
- Simple, doble y circular
- Aplicaciones prácticas: administración de memoria, estructuras dinámicas
Unidad 4. Estructuras No Lineales
- 4.1 Árboles
- Binario, binario de búsqueda (BST), recorrido (inorden, preorden, postorden)
- Aplicaciones: árboles de expresión, jerarquías
- 4.2 Grafos
- Representación: matriz de adyacencia y lista de adyacencia
- Búsqueda: DFS, BFS
- Aplicaciones: redes sociales, mapas, rutas
Unidad 5. Algoritmos de Ordenamiento y Búsqueda
- 5.1 Ordenamientos internos
- Burbuja (como base), QuickSort, MergeSort
- 5.2 Búsqueda
- Secuencial, binaria
- Introducción a Hashing y tablas hash
- Aplicaciones en bases de datos y estructuras clave-valor
Unidad 6. Proyecto Integrador de Estructura de Datos
- 6.1 Implementación de un sistema que integre: Al menos dos estructuras lineales (ej. pila + lista), Un árbol o grafo, Algoritmos de ordenamiento y búsqueda.
- 6.2 Aplicación real: sistema de inventario, agenda dinámica, sistema de rutas, etc.
Cada subtema de este temario está diseñado para ayudarte a dominar las estructuras de datos paso a paso. No importa si es tu primer acercamiento al tema o si ya tienes experiencia: aquí encontrarás explicaciones claras, ejemplos útiles y desafíos para practicar.
Si tienes alguna pregunta, comentario o deseas proponer un tema adicional, no dudes en escribirme o dejar tu mensaje en la sección de contacto.
¡Nos vemos pronto y… a programar! 💻🔥
