
Curso de Algoritmos y Estructuras de Datos en Python
Domine cada estructura de datos y algoritmo fundamental que necesita para superar entrevistas técnicas y escribir código Python de alto rendimiento. Este curso lo lleva desde los fundamentos de Python hasta programación dinámica, grafos y estructuras avanzadas. Usted resolverá problemas reales de entrevista en cada etapa, desarrollando tanto velocidad como confianza. Si usted habla en serio acerca de conseguir un puesto en ingeniería de software, aquí es donde comienza.
Lo que vas a aprender:
Usted construirá una base completa en estructuras de datos y algoritmos basados en Python, comenzando con sintaxis y análisis de complejidad y avanzando a través de arreglos, listas enlazadas, árboles, grafos y programación dinámica. Cada capítulo introduce conceptos fundamentales y luego los aplica directamente a los patrones de problemas que aparecen con más frecuencia en las entrevistas técnicas. Usted implementará cada estructura desde cero, analizará su rendimiento y practicará el reconocimiento de qué algoritmo se ajusta a un problema dado. Los capítulos complementarios cubren backtracking, estrategias voraces, manipulación de bits y estructuras avanzadas como árboles de Fenwick y árboles de segmento. Al final, usted tendrá un portafolio documentado en GitHub y un framework comprobado para resolver problemas desconocidos bajo las condiciones de una entrevista.
Cómo estudias de forma práctica Curso de Algoritmos y Estructuras de Datos en Python
Cómo practicas Curso de Algoritmos y Estructuras de Datos en Python
Para ti que eres empresa y quieres capacitar a tu equipo
En Dedika para empresas, el curso incluye ejercicios y ejemplos adaptados a tu propio negocio y a las necesidades de tu empresa.
Contenido del curso
8 Capítulos • 35 LeccionesDuración entre 4 y 360 horas (tú decides)
Capítulo 1OcultarOcultar detallesVer detallesFundamentos de Python para DSA
Fundamentos de Python para DSA
Lección 1 • Funciones y Ámbito
Define funciones reutilizables, argumentos por defecto y reglas de ámbito de variables. Las funciones son la unidad principal de implementación de algoritmos en este curso.
Lección 2 • Panorama de Colecciones Integradas
Revisa listas, tuplas, diccionarios y conjuntos con sus complejidades temporales. Proporciona el conocimiento práctico de contenedores necesario antes de construir estructuras personalizadas.
Lección 3 • Módulos, Librerías y E/S
Introduce la importación de módulos, el uso de la librería estándar y la lectura de entrada para problemas de estilo competitivo. Prepara a los estudiantes para flujos de trabajo estructurados de resolución de problemas.
Lección 4 • Sintaxis de Python y Flujo de Control
Cubre variables, tipos de datos, condicionales y bucles como la base para todo el código de algoritmos. Establece hábitos de codificación limpia utilizados a lo largo del curso.
Capítulo 2OcultarOcultar detallesVer detallesAnálisis de Complejidad y Big-O
Análisis de Complejidad y Big-O
Lección 1 • Big-O, Big-Theta y Big-Omega
Define las tres notaciones asintóticas y su significado matemático. Los estudiantes aplican cada notación para clasificar el comportamiento de un algoritmo con precisión.
Lección 2 • Medición del Rendimiento de Algoritmos
Introduce conceptos de medición del tiempo de ejecución y por qué el análisis teórico supera a las pruebas de rendimiento por sí solas. Establece la mentalidad analítica para cada capítulo que sigue.
Lección 3 • Análisis de Bucles y Recursión
Enseña el análisis sistemático de bucles anidados y llamadas recursivas. Directamente aplicable a cada algoritmo de ordenamiento y búsqueda en capítulos posteriores.
Lección 4 • Complejidad Espacial
Distingue el espacio auxiliar del espacio total y analiza el uso de memoria de las estructuras de datos. Prepara a los estudiantes para tomar decisiones de intercambio espacio-tiempo.
Capítulo 3OcultarOcultar detallesVer detallesArreglos, Cadenas y Hashing
Arreglos, Cadenas y Hashing
Lección 1 • Dos Punteros y Ventana Deslizante
Introduce los patrones de dos punteros y ventana deslizante para soluciones O(n) en datos ordenados o secuenciales. Reduce significativamente los enfoques de fuerza bruta O(n²).
Lección 2 • Tablas Hash y Manejo de Colisiones
Explica el diseño de funciones hash, resolución de colisiones y el funcionamiento interno de dict en Python. Los estudiantes implementan mapas hash personalizados y resuelven problemas de búsqueda en O(1).
Lección 3 • Técnicas de Manipulación de Arreglos
Cubre operaciones in-place, sumas de prefijo y arreglos de diferencia para consultas de rango. Estos patrones aparecen en la mayoría de problemas estilo entrevista.
Lección 4 • Algoritmos de Procesamiento de Cadenas
Cubre búsqueda de subcadenas, detección de anagramas y verificación de palíndromos usando técnicas eficientes. Construye la intuición de cadenas necesaria para hashing y emparejamiento de patrones.
Capítulo 4OcultarOcultar detallesVer detallesListas Enlazadas, Pilas y Colas
Listas Enlazadas, Pilas y Colas
Lección 1 • Cola, Deque y Cola de Prioridad
Implementa colas FIFO, deques de doble extremo y colas de prioridad basadas en heap. Prepara a los estudiantes para problemas de BFS y algoritmos de planificación.
Lección 2 • Listas Simplemente y Doblemente Enlazadas
Construye clases de listas enlazadas basadas en nodos con inserción, eliminación y recorrido. Establece habilidades de manipulación de punteros utilizadas posteriormente en árboles y grafos.
Lección 3 • Implementación de Pila y Aplicaciones
Implementa pilas usando listas y listas enlazadas, luego las aplica a problemas de análisis sintáctico y evaluación. Las pilas sustentan la simulación de recursión y backtracking.
Lección 4 • Patrones de Problemas de Listas Enlazadas
Cubre técnicas de punteros rápido-lento, inversión y fusión en listas enlazadas. Estos patrones se repiten en problemas de recorrido de árboles y grafos.
Capítulo 5OcultarOcultar detallesVer detallesRecursión y Algoritmos de Ordenamiento
Recursión y Algoritmos de Ordenamiento
Lección 1 • Fundamentos de Recursión
Define casos base, llamadas recursivas y comportamiento de la pila de llamadas con rastreo visual. El diseño correcto de recursión es prerrequisito para divide y vencerás y backtracking.
Lección 2 • Ordenamiento por Divide y Vencerás
Implementa merge sort y quicksort con análisis completo de recurrencia. Los estudiantes comprenden las estrategias de partición y los intercambios de estabilidad.
Lección 3 • Algoritmos de Búsqueda
Implementa búsqueda binaria y sus variantes en arreglos ordenados y espacios de respuesta. La búsqueda binaria sobre la respuesta es un patrón clave para problemas de optimización.
Lección 4 • Ordenamiento Lineal e Híbrido
Cubre counting sort, radix sort y bucket sort para escenarios sin comparación. Los estudiantes identifican cuándo el ordenamiento lineal supera a los métodos basados en comparación.
Capítulo 6OcultarOcultar detallesVer detallesÁrboles y Árboles Binarios de Búsqueda
Árboles y Árboles Binarios de Búsqueda
Lección 1 • Patrones de Problemas de Árboles
Cubre problemas de suma de ruta, ancestro común más bajo y diámetro usando recursión. Estos patrones aparecen frecuentemente en entrevistas técnicas y diseño de sistemas.
Lección 2 • Tries y Árboles de Segmento
Construye tries de prefijo para búsqueda de cadenas y árboles de segmento para consultas de rango. Estos árboles especializados resuelven problemas que los BST y heaps no pueden manejar eficientemente.
Lección 3 • Árboles Balanceados y Heaps
Introduce conceptos de balanceo de árboles AVL y rojo-negro y la estructura de heap. Los estudiantes entienden cuándo los árboles autobalanceables son necesarios para garantías de rendimiento.
Lección 4 • Fundamentos de Árboles Binarios
Define terminología de árboles, estructura de nodos y órdenes de recorrido recursivo. Los patrones de recorrido son la base para todos los algoritmos basados en árboles.
Lección 5 • Operaciones de Árbol Binario de Búsqueda
Implementa inserción, eliminación y búsqueda en BST con análisis de complejidad. Las propiedades del BST permiten recuperación eficiente de datos ordenados y consultas de rango.
Capítulo 7OcultarOcultar detallesVer detallesGrafos y Algoritmos de Grafos
Grafos y Algoritmos de Grafos
Lección 1 • Ordenamiento Topológico y Detección de Ciclos
Aplica el algoritmo de Kahn y el ordenamiento topológico basado en DFS a DAGs. La detección de ciclos y el ordenamiento son esenciales para problemas de resolución de dependencias.
Lección 2 • Árboles de Expansión Mínima y Union-Find
Implementa los algoritmos de Kruskal y Prim junto con la estructura Union-Find. Estas herramientas resuelven problemas de conectividad de red y agrupamiento eficientemente.
Lección 3 • Algoritmos de Camino Más Corto
Implementa Dijkstra, Bellman-Ford y Floyd-Warshall para grafos ponderados. Los estudiantes seleccionan el algoritmo correcto basado en las propiedades y restricciones del grafo.
Lección 4 • Recorridos BFS y DFS
Implementa BFS iterativo y DFS recursivo con seguimiento de visitados. Estos dos recorridos sustentan casi todos los algoritmos de grafos en este capítulo.
Lección 5 • Representaciones de Grafos
Compara representaciones de matriz de adyacencia, lista de adyacencia y lista de aristas con sus intercambios. Elegir la representación correcta impacta directamente la eficiencia del algoritmo.
Capítulo 8OcultarOcultar detallesVer detallesProgramación Dinámica
Programación Dinámica
Lección 1 • Patrones Clásicos de Problemas de DP
Resuelve problemas de mochila, subsecuencia más larga y cambio de moneda como plantillas canónicas de DP. Dominar estas plantillas acelera la resolución de problemas novedosos de DP.
Lección 2 • Fundamentos de DP y Memoización
Define subproblemas superpuestos y subestructura óptima como prerrequisitos de DP. La memoización top-down convierte soluciones recursivas en soluciones eficientes de DP.
Lección 3 • Tabulación y Optimización de Espacio
Construye tablas de DP bottom-up y reduce espacio usando arreglos rodantes. La DP con espacio optimizado es crítica para restricciones de entrada grande en problemas competitivos.
Lección 4 • DP en Intervalos y Cuadrículas
Aplica DP a problemas de fusión de intervalos y caminos en cuadrícula con espacios de estado 2D. Estos patrones extienden las habilidades de DP a tipos de problemas basados en matrices y rangos.
Lección 5 • Técnicas Avanzadas de DP
Cubre DP con máscara de bits, DP de dígitos y DP en árboles para representaciones de estado complejas. Estas técnicas manejan problemas de optimización combinatoria y jerárquica.
Tu certificado válido de finalización
Este curso es para ti:
Estudiante de ciencias de la computación: necesita preparación estructurada para entrevistas más allá de la teoría del aula.
Desarrollador autodidacta: tiene experiencia en proyectos, pero carece de formación formal en algoritmos.
Persona que cambia de trayectoria profesional: se está moviendo hacia la ingeniería de software desde una formación no técnica.
Ingeniero junior: quiere clasificar para roles de nivel medio que requieren mayor profundidad técnica.
Analista de datos: expandiéndose hacia puestos de ingeniería que exigen habilidades de resolución algorítmica de problemas.
Egresado de Bootcamp: listo para dejar los tutoriales atrás y enfrentar desafíos reales de entrevistas.
Lo que dicen nuestros estudiantes
Sus clases son perfectas. Adquirí el paquete de un año y, finalmente, tengo la oportunidad de seguir diversos temas de mi interés sin necesidad de cambiar de plataforma... les agradezco por todo lo que hacen, ya los he recomendado a otras personas...

Me gusta cómo las lecciones van directo al grano y cómo puedo cambiar capítulos y saltar contenidos que no necesito.

Me gusta el contenido y la forma de presentación y transcripción de videos, ¡lo que acelera el proceso!

La plataforma es rápida, simple de usar. La diversidad de contenido y los videos complementarios ayudan mucho en el aprendizaje.

Principales capacitaciones
Preguntas frecuentes
¿Quién es Dedika?
¿El certificado es válido en Perú?
¿Los cursos son gratuitos?
¿Cuál es la carga horaria del curso?
¿Cómo son los cursos?
¿Cómo funcionan los cursos?
¿Cuál es la duración de los cursos?
¿Cuál es el costo o precio de los cursos?
¿Qué es un curso EAD u online y cómo funciona?
Curso en PDF




















