Elige tu idioma
Curso de Algoritmos y Estructuras de Datos en Python
Más de 2 millones de estudiantes en todo el mundo

Curso de Algoritmos y Estructuras de Datos en Python

Domina cada estructura de datos y algoritmo fundamental que necesitas para superar entrevistas técnicas y escribir código Python de alto rendimiento. Este curso te lleva desde los fundamentos de Python hasta la programación dinámica, grafos y estructuras avanzadas. Resolverás problemas reales de entrevista en cada etapa, desarrollando tanto velocidad como confianza. Si tu objetivo es conseguir un puesto en ingeniería de software, este es tu punto de partida.

Dedika para empresas

Lo que vas a aprender:

Construirás una base completa en estructuras de datos y algoritmos con Python, comenzando con sintaxis y análisis de complejidad y avanzando a través de arrays, listas enlazadas, árboles, grafos y programación dinámica. Cada capítulo presenta conceptos fundamentales y luego los aplica directamente a los patrones de problemas que aparecen con mayor frecuencia en las entrevistas técnicas. Implementarás cada estructura desde cero, analizarás su rendimiento y practicarás 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 segmentos. Al final, dispondrás de un portafolio documentado en GitHub y un framework probado para resolver problemas desconocidos en condiciones de 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 formar 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.

Haz clic aquí

Contenido del curso

8 Capítulos • 35 LeccionesDuración entre 4 y 360 horas (tú decides)

Capítulo 1Ver detalles

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 • Visión General de Colecciones Integradas

    Examina 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, Bibliotecas y E/S

    Introduce la importación de módulos, el uso de la biblioteca estándar y la lectura de entrada para problemas de estilo competitivo. Prepara a los estudiantes para flujos de trabajo de resolución de problemas estructurados.

  • Lección 4 • Sintaxis de Python y Flujo de Control

    Cubre variables, tipos de datos, condicionales y bucles como base para todo el código de algoritmos. Establece hábitos de codificación limpia utilizados a lo largo del curso.

Capítulo 2Ver detalles

Análisis de Complejidad y Notación 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 con precisión el comportamiento de los algoritmos.

  • 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 empíricas por sí solas. Establece la mentalidad analítica para cada capítulo siguiente.

  • 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 ordenación 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 compromiso espacio-tiempo.

Capítulo 3Ver detalles

Arrays, 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, la resolución de colisiones y los detalles internos de los 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 Arrays

    Cubre operaciones in-place, sumas de prefijos y arrays de diferencias para consultas de rango. Estos patrones aparecen en la mayoría de los problemas tipo entrevista.

  • Lección 4 • Algoritmos de Procesamiento de Cadenas

    Cubre la búsqueda de subcadenas, detección de anagramas y verificación de palíndromos usando técnicas eficientes. Construye la intuición sobre cadenas necesaria para hashing y coincidencia de patrones.

Capítulo 4Ver detalles

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 montículos. Prepara a los estudiantes para problemas de BFS y algoritmos de planificación.

  • Lección 2 • Listas Simples 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 y Aplicaciones de Pilas

    Implementa pilas usando listas y listas enlazadas, luego las aplica a problemas de análisis y evaluación. Las pilas sustentan la simulación de recursión y el 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 reaparecen en problemas de recorrido de árboles y grafos.

Capítulo 5Ver detalles

Recursión y Algoritmos de Ordenación

  • Lección 1 • Fundamentos de Recursión

    Define casos base, llamadas recursivas y el comportamiento de la pila de llamadas con seguimiento visual. El diseño correcto de recursión es un prerrequisito para divide y vencerás y backtracking.

  • Lección 2 • Ordenación 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 compromisos de estabilidad.

  • Lección 3 • Algoritmos de Búsqueda

    Implementa la búsqueda binaria y sus variantes en arrays 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 • Ordenación Lineal e Híbrida

    Cubre counting sort, radix sort y bucket sort para escenarios sin comparación. Los estudiantes identifican cuándo la ordenación lineal supera a los métodos basados en comparación.

Capítulo 6Ver detalles

Árboles y Árboles Binarios de Búsqueda

  • Lección 1 • Patrones de Problemas de Árboles

    Cubre problemas de suma de camino, ancestro común más bajo y diámetro usando recursión. Estos patrones aparecen con frecuencia en entrevistas técnicas y diseño de sistemas.

  • Lección 2 • Tries y Árboles de Segmento

    Construye tries de prefijos para búsqueda de cadenas y árboles de segmento para consultas de rango. Estos árboles especializados resuelven problemas que los BSTs y montículos no pueden manejar eficientemente.

  • Lección 3 • Árboles Balanceados y Montículos

    Introduce los conceptos de balanceo de árboles AVL y rojo-negro, y la estructura de montículo. Los estudiantes comprenden cuándo son necesarios los árboles autobalanceables para garantías de rendimiento.

  • Lección 4 • Fundamentos de Árboles Binarios

    Define la terminología de árboles, la estructura de nodos y los órdenes de recorrido recursivo. Los patrones de recorrido son la base de todos los algoritmos basados en árboles.

  • Lección 5 • Operaciones de Árbol Binario de Búsqueda

    Implementa la inserción, eliminación y búsqueda en BST con análisis de complejidad. Las propiedades del BST permiten la recuperación eficiente de datos ordenados y consultas de rango.

Capítulo 7Ver detalles

Grafos y Algoritmos de Grafos

  • Lección 1 • Orden Topológico y Detección de Ciclos

    Aplica el algoritmo de Kahn y la ordenación topológica basada en DFS a DAGs. La detección de ciclos y la ordenación 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 de manera eficiente.

  • 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 según 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 las representaciones de matriz de adyacencia, lista de adyacencia y lista de aristas con sus compromisos. Elegir la representación correcta impacta directamente en la eficiencia del algoritmo.

Capítulo 8Ver detalles

Programación Dinámica

  • Lección 1 • Patrones Clásicos de Problemas de DP

    Resuelve los problemas de la mochila, subsecuencia más larga y cambio de monedas como plantillas canónicas de DP. Dominar estas plantillas acelera la resolución de nuevos problemas de DP.

  • Lección 2 • Fundamentos de DP y Memoización

    Define los subproblemas solapados y la subestructura óptima como prerrequisitos de DP. La memoización descendente convierte soluciones recursivas en soluciones DP eficientes.

  • Lección 3 • Tabulación y Optimización de Espacio

    Construye tablas DP ascendentes y reduce el espacio usando arrays rodantes. La DP con espacio optimizado es crítica para restricciones de entrada grandes 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 amplían las habilidades de DP a tipos de problemas matriciales y basados en rangos.

  • Lección 5 • Técnicas Avanzadas de DP

    Cubre DP con máscaras 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.

Certificación

Tu certificado válido de finalización

Este curso es para ti:

  • Estudiante de informática: necesita preparación estructurada para entrevistas más allá de la teoría de clase.

  • Desarrollador autodidacta: tiene experiencia en proyectos pero carece de formación formal en algoritmos.

  • Cambio de carrera: transición a la ingeniería de software desde una formación no técnica.

  • Ingeniero/a junior: quiere cualificarse para roles de nivel medio que requieren una mayor profundidad técnica.

  • Analista de datos: expandiéndose hacia puestos de ingeniería que requieren competencias en resolución algorítmica de problemas.

  • Graduado de bootcamp: listo para dejar atrás los tutoriales y enfrentarse a los desafíos reales de las entrevistas.

Lo que dicen nuestros alumnos

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... agradezco todo lo que hacéis, ya os he recomendado a otras personas...
Giulio Carlo
Giulio CarloAlumno de Marketing Digital
Me gusta cómo las lecciones van directas al grano y cómo puedo cambiar de capítulos y saltar contenidos que no necesito.
Mariana Ferres
Mariana FerresAlumna de Fotografía
Me gusta el contenido y la forma de presentación y transcripción de vídeos, ¡lo que acelera el proceso!
Luciana Alvarenga
Luciana AlvarengaAlumna de Diseño de Uñas
La plataforma es rápida, fácil de usar. La diversidad de contenido y los vídeos complementarios ayudan mucho en el aprendizaje.
André Felipe
André FelipeAlumno de Ingeniería de Prompts

Principales capacitaciones

Preguntas frecuentes

¿Quién es Dedika?

¿El certificado es válido en España?

¿Los cursos son gratuitos?

¿Cuál es la carga lectiva 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 coste o precio de los cursos?

¿Qué es un curso EAD u online y cómo funciona?

Curso en PDF