_____________________________________________________________________________________





Estructura de Datos y Algoritmos 

ISABEL SEGURA BEDMAR

LOURDES MORENO LÓPEZ
HARITH ALJUMAILY
JOSÉ LUIS MARTÍNEZ FERNÁNDEZ

Departamento de Informática, Universidad Carlos III de Madrid

Área: Programación

Titulación: Grado en Ingeniería Informática

Diciembre, 2018Compartir:    


6 ECTS: 1.6 Horas de clase de teoría y 1.66 h de laboratorio.

Tiempo total previsto de aprendizaje: 180 horas

 

PRERREQUISITOS Y CONOCIMIENTOS PREVIOS RECOMENDADOS

  • Cálculo
  • Programación
 

DESCRIPCIÓN GENERAL DEL CURSO

En esta asignatura, los estudiantes estudiarán las principales estructuras de datos (listas, árboles y grafos) y sus algoritmos de manipulación. A partir de las estructuras estudiadas durante el curso, los estudiantes adquirirán las habilidades para diseñar y desarrollar las estructuras de datos más apropiadas para resolver problemas de la vida real y desarrollar software de calidad. También aprenderán a analizar los algoritmos desde el punto de vista de la complejidad temporal y espacial, para ser capaces de proponer los algoritmos más eficientes. También se estudiaran las las estrategias algorítmicas de recursión y divide y vencerás.


OBJETIVOS: CONOCIMIENTOS Y CAPACIDADES

Se busca desarrollar las siguientes capacidades y conocimientos:

  • Análisis y síntesis, así como la capacidad de planificar y organizar
  • Resolución de Problemas mediante algoritmos
  • Trabajo en equipo
  • Conocimiento de las principales estructuras de datos y estrategias algorítmicas (iteración, recursión y divide y vencerás)
  • Analizar la complejidad de los algoritmos
  • Utilizar diferentes estructuras de datos para implementar soluciones a problemas específicos
  • Preocupación por la claridad, sencillez y eficiencia en la resolución de problemas
  • Debatir las distintas soluciones a un problema.


MATERIAL DOCENTE

El curso incluye documentos  con la explicación de los conceptos teóricos más importantes, resúmenes guiados con los principales objetivos de cada unidad, problemas  propuestos con las soluciones correspondientes, un caso práctico completo, y evaluaciones parciales y globales con soluciones.


 ACTIVIDADES DE EVALUACIÓN O TAREAS PRÁCTICAS

Al final del curso, debería ser capaz de realizar la siguientes tareas:

  • Resolver los problemas de los exámenes en el tiempo indicado en ellos.
  • Implementar en Java las soluciones de los problemas planteados.
  • Analizar la complejidad temporal y espacial de un algoritmo.
  • Diseñar e implementar las estructuras datos y sus algoritmos que resuelvan la descripción de un problema real (tipo caso práctico).


Last modified: Wednesday, 19 October 2022, 11:16 AM