Última actualización: 22/04/2019


Curso Académico: 2019/2020

Estructura de datos y algoritmos
(13873)
Titulación: Doble Grado en Ingeniería Informática y Administración de Empresas (233)


Coordinador/a: SEGURA BEDMAR, ISABEL

Departamento asignado a la asignatura: Departamento de Informática

Tipo: Obligatoria
Créditos: 6.0 ECTS

Curso:
Cuatrimestre:




Materias que se recomienda haber superado
- Programación. - Cálculo
Competencias que adquiere el estudiante y resultados del aprendizaje.Más información en este enlace
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, TRABAJOS COLECTIVOS CGB% (0,50 ECTS) Evidencia de Evaluación: PRÁCTICAS DE LABORATORIO, TRABAJO COLECTIVO 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: Trabajo individual: - 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) Trabajo en grupo: Caso Práctico sobre diseño e implementación de estructuras de datos. (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. Algoritmos I: Análisis de la Complejidad. a. Análisis de Algoritmos b. Tipos de Complejidad c. Función Tiempo de Ejecución. d. Orden de Complejidad e. Caso peor, mejor y promedio. 4. Algoritmos II: Recursión. 5. Tipos Abstractos de Datos Jerárquicos: Árboles a. Árboles generales b. Árboles binarios c. Recorrido de un árbol: preorden, en orden, postorden, por niveles d. Árboles Binarios de búsqueda. e. ABB equilibrados. 6. Grafos. a. Definición TAD Grafo. Aplicaciones. b. Implementación basada en matriz de adyacencias. c. Implementación basada en lista de adyacencias. d. Recorridos en profundidad y amplitud e. Algoritmo de Dijkstra (camino más corto). 7. 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. Prueba 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 60
  • Peso porcentual del resto de la evaluación 40
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 y la planificación semanal podrían sufrir alguna variación por causa de fuerza mayor debidamente justificada o por eventos académicos comunicados con antelación.