Última actualización: 04/01/2021


Curso Académico: 2020/2021

Estructura de datos y algoritmos
(13873)
Grado en Ingeniería Informática (Plan 2018) (Plan: 431 - Estudio: 218)


Coordinador/a: SEGURA BEDMAR, ISABEL

Departamento asignado a la asignatura: Departamento de Informática

Tipo: Obligatoria
Créditos: 6.0 ECTS

Curso:
Cuatrimestre:




Requisitos (Asignaturas o materias cuyo conocimiento se presupone)
- Programación. - Cálculo
COMPETENCIA Nº CRÉDITOS ECTS EVIDENCIAS DE EVALUACIÓN CECRI1 (1 ECTS), Evidencia de Evaluación: PRÁCTICAS DE LABORATORIO, TRABAJOS COLECTIVOS (CASO PRÁCTICO) CECRI6 (ALGORITMOS) (1.5 ECTS) Evidencia de Evaluación:EXÁMENES, PRÁCTICAS DE LABORATORIO, TRABAJO COLECTIVO E INDIVIDUAL CECRI7 (TIPOS Y ESTRUCTURAS DE DATOS) (2.5 ECTS), Evidencia de Evaluación: EXÁMENES, PRÁCTICAS DE LABORATORIO, TRABAJO COLECTIVO E INDIVIDUAL CGB4 (0,50 ECTS), Evidencia de Evaluación: PRÁCTICAS DE LABORATORIO CGB% (0,50 ECTS) Evidencia de Evaluación: PRÁCTICAS DE LABORATORIO 1. Competencias Transversales/Genéricas - Capacidad de análisis y síntesis (PO e) - Capacidad de organizar y planificar (PO d) - Resolución de problemas (PO e) - Trabajo en equipo (PO d) - Capacidad de aplicar los conocimientos en la práctica (PO e) 2. Competencias Específicas a. Cognitivas (Saber) - Conocimiento general sobre algorítmica (PO a) - Conocimiento de estructuras de datos fundamentales (PO k) - Conocimiento de estructuras de datos avanzadas (PO k) b. Procedimentales/Instrumentales (Saber hacer) - Diseñar y analizar la complejidad de algoritmos (PO a) - Interpretar y utilizar las diferentes estructuras de datos (PO k) - Implementar soluciones a problemas específicos mediante estas herramientas (PO e) c. Actitudinales (Ser) - Capacidad de resolución de problemas mediante algoritmos (PO e) - Preocupación por la claridad, sencillez y eficiencia en la resolución de problemas (PO e y k) - Debatir y concluir las distintas soluciones a un problema (PO e y k) Los resultados de aprendizaje son: - Resolución por parte del alumno de problemas en el que debe demostrar que tienen capacidad para combinar la teoría y práctica (PO a, e, k) - Diseñar e implementar estructuras de datos y sus algoritmos para desarrollar una práctica. (PO a, d, e, k)
Descripción de contenidos: Programa
1. Tipo Abstracto de Datos 2. Tipos Abstractos de Datos lineales a. Pilas. b. Colas. d. Listas: simples y dobles. 3. Análisis de Algoritmos. a. Análisis Empírico. b. Análisis Teórico. Funciones Big-O. Mejor y peor caso. 4. Recursión I. 5. Árboles a. Conceptos generales b. Árboles binarios c. Recorridos d. Árboles Binarios de búsqueda. e. Equilibrado de árboles. 6. Grafos. a. Implementaciones. b. Algoritmos de recorridos. c. Algoritmo de camino mínimo. 7. Recursión II: Divide y Vencerás
Actividades formativas, metodología a utilizar y régimen de tutorías
1. Clases Teóricas: Tienen por objetivo alcanzar las competencias específicas cognitivas de la asignatura (PO a y k) 2. Actividades académicas dirigidas por el profesor: 2.1. Con presencia del profesor: Resolución de ejercicios de análisis, diseño e implementación con distinto nivel de complejidad en colaboración con los alumnos (PO a, e). Parte de estas actividades se llevarán a cabo en laboratorio informático (PO k). 2.2. Sin presencia del profesor: Ejercicios, prácticas de implementación y lecturas básicas y complementarias propuestas por el profesor (PO k, e) Además estas actividades pueden realizarse como: a). Trabajo individual: Consistente en el desarrollo de las soluciones a los problemas y ejercicios propuestos por el profesor. b). Trabajo en grupo: Consistente en el desarrollo de las soluciones a los problemas colectivos propuestos por el profesor (PO d). 3. Pruebas de evaluación intermedia y examen final de la asignatura (PO a, e, k) 4. Se realizará una tutoría colectiva por cada grupo pequeño para resolver las preguntas y dudas de los estudiantes.
Sistema de evaluación
  • Peso porcentual del Examen Final 40
  • Peso porcentual del resto de la evaluación 60

Bibliografía básica
  • Aho, A. V.; Hopcroft, J. E.; Ullman, J. D.. Estructuras de Datos y Algoritmos. Addison Wesley Iberoamericana.
  • Michael T. Goodrich and Roberto Tamassia. Data Structures and Algorithms in Python, . John Wiley & Sons. 2013
Recursos electrónicosRecursos Electrónicos *
Bibliografía complementaria
  • Isabel Segura Bedmar, Harith AlJumaily, Julian Moreno Schneider, Juan Perea & Nathan D. Ryan. Algorithms and Data Structures. OCW-UC3M: http://ocw.uc3m.es/ingenieria-informatica/algorithms-and-data-structures. 2011
  • Lourdes Araujo Serna, Raquel Martínez Unanue y Miguel Rodríguez Artacho. Programación y estructuras de datos avanzadas. UNED. 2011
(*) El acceso a algunos recursos electrónicos puede estar restringido a los miembros de la comunidad universitaria mediante su validación en campus global. Si esta fuera de la Universidad, establezca una VPN


El programa de la asignatura podría sufrir alguna variación por causa de fuerza mayor debidamente justificada o por eventos académicos comunicados con antelación.