Esta asignatura proporciona al perfil del egresado habilidades para la selección y aplicación de algoritmos y las estructuras de datos en el desarrollo e implementación de programas que permitan la solución de problemas. 

 La relevancia de la asignatura es que el alumno identifique claramente la forma en cómo se estructuran y organizan los datos internamente, para poder hacerlos más eficientes en cuanto a la administración del tiempo de procesador y el uso de la memoria. 

 Para cursar esta asignatura se requiere tener habilidades básicas de programación e interpretación de algoritmos y tener el dominio del paradigma orientado a objetos. Además, debe de conocer y manejar los conceptos generales de la lógica matemática, relaciones y la teoría de grafos, por esta razón se encuentra ubicada para ser cursada después de Fundamentos de Programación y de Programación Orientada a Objetos y Matemáticas Discretas, a su vez, esta asignatura es el pilar fundamental en el análisis, diseño y desarrollo de aplicaciones de software de bajo y alto nivel.