GUÍA DE APRENDIZAJE ESTRUCTURA DE DATOS Datos Descriptivos TITULACIÓN: CENTROS IMPLICADOS: GRADO EN INGENIERIA DEL SOFTWARE E.U. DE INFORMATICA CICLO: Grado sin atribuciones MÓDULO: MATERIA: PROGRAMACIÓN ASIGNATURA: ESTRUCTURA DE DATOS CURSO: 1 º SEMESTRE: Semestre 2º (Febrero-Junio) ORGANIZACION Y ESTRUCTURA DEPARTAMENTO RESPONSABLE: DE LA INFORMACION (TITULO PROVISIONAL) CRÉDITOS EUROPEOS: 6 CARÁCTER: OBLIGATORIA CURSO ACADÉMICO: 2011/2012 PERIODO DE IMPARTICIÓN: Semestre 2º (Febrero-Junio) Datos Comunes ITINERARIO: IDIOMAS IMPARTICIÓN: Español OTROS IDIOMAS IMPARTICIÓN: HORAS/CRÉDITO: 26
Profesorado COORDINADOR: CAROLINA GALLARDO PEREZ NOMBRE DESPACHO EMAIL EN INGLÉS CAROLINA GALLARDO PEREZ 1202-2 carolina.gallardop@upm.es No JESUS MARTINEZ BARBERO 1116 jesus.martinezb@upm.es No MIGUEL ANGEL DIAZ MARTINEZ 1202-1 m.diaz@upm.es No JESUS SANCHEZ LOPEZ 1121 jesus.sanchezl@upm.es No JOSE LUIS SANCHEZ SANCHEZ 1120 joseluis.sanchez@upm.es No (*) Profesores externos en cursiva. Tutorías NOMBRE TUTORÍAS Lugar Día De A Grupos GRUPOS ASIGNADOS EN: Nº de grupos 4 Prácticas 0 Laboratorio 6
Requisitos previos necesarios ASIGNATURAS SUPERADAS OTROS REQUISITOS Conocimientos previos recomendados ASIGNATURAS PREVIAS RECOMENDADAS FUNDAMENTOS DE LA PROGRAMACION MATEMATICA DISCRETA CONOCIMIENTOS PREVIOS OTROS CONOCIMIENTOS
Competencias CÓDIGO COMPETENCIA NIVEL RA E5 Capacidad de identificar y analizar problemas y diseñar, desarrollar, implementar, verificar y documentar soluciones software sobre la base de un conocimiento adecuado de las teorías, modelos y técnicas actuales. N2 G1 Capacidad de análisis y síntesis. N3 G10, adaptación a nuevas situaciones y motivación por el desarrollo profesional permanente. N1 G11 Creatividad. N1 G14 Motivación por la calidad. N2 G6 de problemas. N3 G9 Razonamiento crítico. N1 I22 Conocimiento de los fundamentos del uso y programación de los computadores, los sistemas operativos, las bases de datos y, en general, los programas informáticos con aplicación en ingeniería. N2 RA_01 RA_05 I5 Conocimiento, administración y mantenimiento sistemas, servicios y aplicaciones informáticas. N1 RA_05 I6 Conocimiento y aplicación de los procedimientos algorítmicos básicos de las tecnologías informáticas para diseñar soluciones a problemas, analizando la idoneidad y complejidad de los algoritmos propuestos. N1 I7 Conocimiento, diseño y utilización de forma eficiente los tipos y estructuras de datos más adecuados a la resolución de un problema. N3 I8 Capacidad para analizar, diseñar, construir y mantener aplicaciones de forma N1 RA_01
robusta, segura y eficiente, eligiendo el paradigma y los lenguajes de programación más adecuados. RA_05
Resultados de aprendizaje CÓDIGO RA_01 RA_05 DESCRIPCIÓN Comprende los elementos de lenguajes de programación de distintos paradigmas. Identifica las principales estructuras de datos y técnicas algorítmicas y sus complejidades. Modela y Diseña soluciones atendiendo a los compromisos de eficiencia, modularidad. Implementa, Prueba y Verifica soluciones atendiendo a los compromisos de eficacia, legibilidad y documentación. Utiliza entornos y herramientas de desarrollo.
Indicadores de logro CÓDIGO INDICADOR RA IN_01 El estudiante deberá conocer los elementos del lenguaje de programación Java y realizar programas sencillos. RA_01 IN_02 El estudiante deberá conocer las listas ordinales (pilas y colas), así como las técnicas de programación más adecuadas para el manejo de cada una. RA_05 IN_03 El estudiante deberá ser capaz de conocer, implementar y utilizar los diferentes tipos de listas. RA_05 IN_04 El estudiante deberá ser capaz de conocer, implementar y utilizar los árboles binarios. RA_05 IN_05 El estudiante deberá ser capaz de conocer, implementar y utilizar los grafos RA_05 IN_06 El estudiante deberá conocer la importancia y el rol de la abstracción y los TADs en informática. RA_05 Ser capar de utilizar el TAD más apropiado para la resolución de un problema independientemente de su implementación.
Contenidos específicos (temario) TEMA / CAPÍTULO 1. Conceptos básicos 1.1. Introducción al lenguaje Java APARTADO IN_01 1.2. Estructuras de Datos. IN_01 1.3. Manejo de ficheros. IN_01 2. Listas ordinales 2.1. Pilas IN_02 IN_06 2.2 Colas IN_02 IN_06 3. Listas calificadas 3.1 Listas calificadas no ordenadas IN_03 3.2 Listas calificadas ordenadas IN_03 3.3. Otros tipos de listas IN_03
4. Árboles 4.1 Concepto básicos IN_04 4.2 Árboles Binarios IN_04 4.3 Árboles Binarios de Búsqueda IN_04 5. Grafos 5.1 Conceptos Básicos IN_05 5.2 Matriz de adyacencia IN_05 5.3. Lista de adyacencia IN_05
Breve descripción de las modalidades organizativas utilizadas y métodos de enseñanza empleados MODALIDAD DESCRIPCIÓN MÉTODO MÉTODOS DE ENSEÑANZA Exposición, con apoyo de material visual, de los fundamentos teóricos en los que se basan cada uno de los temas componentes de la de asignatura. de casos prácticos que permiten el afianzamiento de los contenidos teóricos. Se imparten en aulas de laboratorio en grupo de Realización de en grupos de 2 alumnos. de problemas planteados a partir de los conocimientos teóricos adquiridos con anterioridad de manera autónoma por parte del alumno sin la guía del profesor (aunque sí con retroalimentación). de problemas planteados a partir de los conocimientos teóricos adquiridos con anterioridad. En algunos temas, estas clases se insertan de manera temporal en algunas clases Proyectos y y
Cronograma de trabajo de la asignatura SEMANA ACTIVIDADES Actividad Modalidad Met.Ense. Lugar Duración Tipo Prep. Carga(%) Tema 1.1 & 1.2 de 1 A1.1. Manejo de Eclipse y Otros 3 hrs. No 1,92 Actividad Modalidad Met.Ense. Lugar Duración Tipo Prep. Carga(%) Tema 1.2 & 1.3 de 2 A1.2. Construcción y puesta a punto Test 1. y Otros 1 hrs. Sí 2 1,92 Actividad Modalidad Met.Ense. Lugar Duración Tipo Prep. Carga(%) Tema 2. Pilas y colas de 3 A2. Pilas y Otros 3 hrs. No 1,92 Actividad Modalidad Met.Ense. Lugar Duración Tipo Prep. Carga(%) Tema 2.PyC de y 4 A3. Pruebas TADs Test 2. Pilas y colas y Otros 1 hrs. Sí 2 1,92 Actividad Modalidad Met.Ense. Lugar Duración Tipo Prep. Carga(%) Tema 3. Listas calificadas de 5 A4. Prototipo Examen PyC y Aula 2 hrs. Sí 13 9,62
Actividad Modalidad Met.Ense. Lugar Duración Tipo Prep. Carga(%) y Otros 2 hrs. No 1,28 6 Tema 3. Listas calificadas de A4. Prototipo Test 3. Listas calificadas y Otros 2 hrs. Sí 2 2,56 Actividad Modalidad Met.Ense. Lugar Duración Tipo Prep. Carga(%) Tema 3 de y 7 Práctica A4 y trabajo en grupo Proyectos Laboratorio 2 hrs. Sí 2 2,56 y Otros 2 hrs. No 1,28 Actividad Modalidad Met.Ense. Lugar Duración Tipo Prep. Carga(%) Tema 3. Otras listas de 8 A5. TAD Lista y Otros 2 hrs. No 1,28 Test 4. Otras Listas y Otros 1 hrs. Sí 2 1,92 Actividad Modalidad Met.Ense. Lugar Duración Tipo Prep. Carga(%) Examen Listas y Aula 1 hrs. Sí 13 8,97 9 Tema 4. Árboles binarios de A5. TAD Lista Actividad Modalidad Met.Ense. Lugar Duración Tipo Prep. Carga(%) Tema 4. Árboles binarios de 10 Práctica A5 y trabajo en grupo Proyectos Laboratorio 2 hrs. Sí 2 2,56 Test 5. AB y Otros 1 hrs. Sí 2 1,92
Actividad Modalidad Met.Ense. Lugar Duración Tipo Prep. Carga(%) Tema 4. Árboles binarios de 11 A6. TAD Árbol y Otros 4 hrs. No 2,56 Actividad Modalidad Met.Ense. Lugar Duración Tipo Prep. Carga(%) Tema 4 de y 12 A6. TAD Árbol Test 6. ABB y Otros 1 hrs. Sí 2 1,92 Actividad Modalidad Met.Ense. Lugar Duración Tipo Prep. Carga(%) Tema 5. Grafos de 13 Práctica A6 y trabajo en grupo Proyectos Laboratorio 2 hrs. Sí 2 2,56 y Otros 2 hrs. No 1,28 Actividad Modalidad Met.Ense. Lugar Duración Tipo Prep. Carga(%) Tema 5. Grafos de 14 A7. Integración y pruebas y Otros 2 hrs. No 1,28 Actividad Modalidad Met.Ense. Lugar Duración Tipo Prep. Carga(%) Tema 5 de y 15 A7. Integración y pruebas Test 7. Grafos y Otros 1 hrs. Sí 2 1,92 16 Actividad Modalidad Met.Ense. Lugar Duración Tipo Prep. Carga(%) Práctica A7 y trabajo en grupo Proyectos Laboratorio 2 hrs. Sí 2 2,56 Aula 2 hrs. Sí 13 9,62
Examen Árboles y Grafos y Examen Final y Aula 3 hrs. Sí Examen final 79 52,56
de la asignatura SEMANA EVALUACIONES 2 Test 1. Otros 4 Test 2. Pilas y colas Otros 5 Examen PyC Aula 6 Test 3. Listas calificadas Otros 7 Práctica A4 Laboratorio 8 Test 4. Otras Listas Otros 9 Examen Listas Aula
10 Práctica A5 Laboratorio Test 5. AB Otros 12 Test 6. ABB Otros 13 Práctica A6 Laboratorio 15 Test 7. Grafos Otros Práctica A7 Laboratorio 16 Examen Árboles y Grafos Aula Examen Final Aula Examen final
Criterios de calificación de la asignatura El proceso de enseñanza-aprendizaje contempla un mecanismo de evaluación tanto en la parte práctica como en la parte teórica de la asignatura. La calificación de la asignatura se realiza de acuerdo con los siguientes criterios: Asistencia y participación en clases de teoría: 10% Exámenes escritos: 40% Asistencia y participación en clases de laboratorio (): 10% Actividad : 40% Para optar a la evaluación será necesario: Parte de : o positiva de las actividades propuestas, con una calificación media global igual o superior al 50%. o positiva de los exámenes escritos con una calificación media global igual o superior al 40%. Parte práctica: o Asistir al menos al 60 % de las clases tanto de teoría como de práctica. o Entregar al menos el 50% de los cuestionarios s propuestos en clase. Para alumnos sin posibilidad de evaluación : positiva de todas las propuestas (20% del peso sobre la calificación final). positiva del examen global escrito (80% del peso sobre la calificación final). En ambos itinerarios será necesario aprobar por separado cada una las partes teórica y práctica.
Recursos didácticos TIPO Bibliografía Recursos web Equipamiento DESCRIPCIÓN MARTÍNEZ, P. GALLARDO, C. y SÁNCHEZ, J.; Estructuras de datos. Servicio de Publicaciones EUI, 2010 MARTÍNEZ, P. SÁNCHEZ, J. y GALLARDO, C. Ejercicios de Estructuras de dato en Java.. Servicio de Publicaciones EUI, 2010 GOODRICH, M. T. Y TAMASSIA, R.; Data Structures and Algorithms in Java John Wiley & Sons, 2006 WEISS, M. A.; Data Structures and Problem Solving Using Java Addison-Wesley, 2009 WEISS, M. A.; Estructuras de datos en Java Addison-Wesley, 2000 Material de elaboración propia así como recursos didácticos de la plataforma de teleformación on-line (moodle). Curso Estructuras de Datos publicado en OCW Open CourseWare de la UPM. Disponible en http://ocw.upm.es/lenguajes-y-sistemas-informaticos/ estructuras-de-datos Aula de la EUI con cañón de video conectado a PC en la mesa del profesor y sistema de audio inalámbrico. Pizarra clásica. Aula de la EUI con al menos un PC por alumno para que puedan realizar las y cañón de video para poder guiar dicha realización
Otra información reseñable