Algoritmos y Complejidad

Este curso está diseñado para estudiantes universitarios interesados en mejorar sus conocimientos y habilidades en el campo de los algoritmos y la complejidad. A lo largo del curso, los estudiantes aprenderán los fundamentos teóricos y prácticos de los algoritmos, así como a analizar y evaluar su complejidad. Se explorarán diferentes técnicas y estrategias para resolver problemas algorítmicos de manera eficiente. Al finalizar el curso, los estudiantes estarán preparados para aplicar estos conocimientos en el diseño y análisis de algoritmos en diversos contextos.

Créditos

3

Módulos

15

Modalidad

Virtual o Híbrido

Objetivos de aprendizaje

Ingeniería de Sistemas
  • Comprender los conceptos básicos de los algoritmos y su importancia en la resolución de problemas.
  • Conocer y aplicar diferentes técnicas y estrategias para el diseño de algoritmos eficientes.
  • Aprender a analizar y evaluar la complejidad de los algoritmos utilizando notación Big O.
  • Desarrollar habilidades para resolver problemas algorítmicos de manera eficiente y optimizada.
  • Aplicar los conocimientos adquiridos en el diseño y análisis de algoritmos en diferentes situaciones y contextos.

Temas

1. 

Definición y características de los algoritmos

2. 

Importancia de los algoritmos en la resolución de problemas

3. 

Ejemplos y aplicaciones de algoritmos en la vida cotidiana

1. 

Estrategias de diseño de algoritmos

2. 

Divide y vencerás

3. 

Algoritmos voraces

1. 

Notación Big O y su importancia en el análisis de la complejidad

2. 

Complejidad temporal y espacial de los algoritmos

3. 

Clases de complejidad y su relación con los problemas computacionales

1. 

Divide y vencerás

2. 

Programación dinámica

3. 

Algoritmos de búsqueda y optimización

1. 

Optimización de rutas en logística

2. 

Clasificación de datos en machine learning

3. 

Algoritmos de criptografía y seguridad