Denominación de la asignatura |
Estructura de datos |
Grado al que pertenece |
Grado en Ingeniería Informática |
Créditos ECTS |
6 |
Curso y cuatrimestre en el que se imparte |
Segundo curso, primer cuatrimestre |
Carácter de la asignatura | Obligatoria |
El objetivo de la asignatura Estructura de Datos (ED) es el de introducir los conocimientos necesarios en el alumno para ser capaz de, en primer lugar, desarrollar de forma autónoma estructuras de datos básicas, así como algoritmos que permitan realizar operaciones sobre dichas estructuras tales como obtención, borrado, creación o búsqueda de elementos entre otros.
Por otra parte, una vez adquiridos estos conocimientos básicos sobre el uso de estas estructuras de datos, se plantea que el alumno sea capaz de usar las estructuras homólogas disponibles en las librerías propias de Java (o externas), con el objetivo de conocer con más detalle las diferentes librerías disponibles en Java para el uso de estructuras de datos simples o complejas.
Finalmente, el alumno adquirirá los conocimientos necesarios que le permitirán discernir, para un problema dado, cual es la mejor estructura o combinación de estructuras a utilizar para resolver dicho problema, teniendo en cuenta tanto la complejidad temporal como espacial de usar una estructura u otra y sus algoritmos de acceso.
A continuación se enumeran las competencias que adquirirás al cursar esta asignatura:
Competencias básicas
Competencias generales
Competencias específicas
Competencias transversales
Tema 1. Introducción a la programación en Java
Clases, constructores, métodos y atributos
Variables
Expresiones condicionales y bucles
Objetos
Tema 2. Tipos abstractos de datos
Tipos de datos
Estructuras básicas y TAD
Vectores y arrays
Tema 3. Estructuras de datos lineales
TAD Lista. Definición
Listas enlazadas y doblemente enlazadas
Listas ordenadas
Listas en Java
Tema 4. ED lineales: pilas y colas
TAD Pila
TAD Cola
Pila y Cola en Java
Tema 5. Estructuras de datos jerárquicas
TAD Árbol
Recorridos
Árboles n-arios
Árboles binarios
Árboles binarios de búsqueda
Tema 6. Estructuras de datos jerárquicas: árboles complejos
Árboles perfectamente equilibrados o de altura mínima
Árboles multicamino
Referencias bibliográficas
Tema 7. Montículos y cola de prioridad
TAD Montículos
TAD Cola de prioridad
Tema 8. Tablas hash
TAD Tabla hash
Funciones hash
Función hash en tablas hash
Redispersión
Tablas hash abiertas
Tema 9. Grafos
TAD Grafo
Tipos de grafo
Representación gráfica y operaciones básicas
Diseño de grafos
Tema 10.Algoritmos y conceptos avanzados sobre grafos
Problemas sobre grafos
Algoritmos sobre caminos
Algoritmos de búsqueda o recorridos
Otros algoritmos
Tema 11. Otras estructuras de datos
Conjuntos
Arrays paralelos
Tablas de símbolos
Tries
Tema 12. Análisis final y APIs para manejo de estructuras de datos
Estructuras de datos lineales: listas, pilas y colas
Árboles
Colas de prioridad: montículos
Tablas hash
Grafos
Conclusiones
Las actividades formativas de la asignatura se han elaborado con el objetivo de adaptar el proceso de aprendizaje a las diferentes capacidades, necesidades e intereses de los alumnos.
Las actividades formativas de esta asignatura son las siguientes:
En la programación semanal puedes consultar cuáles son las actividades concretas que tienes que realizar en esta asignatura.
Estas actividades formativas prácticas se completan, por supuesto, con estas otras:
Las horas dedicadas a cada actividad se detallan en la siguiente tabla:
ACTIVIDADES FORMATIVAS |
HORAS |
% PRESENCIAL |
Sesiones presenciales virtuales | 15 |
100% |
Recursos didácticos audiovisuales | 6 |
0 |
Estudio del material básico | 50 |
0 |
Lectura del material complementario | 25 |
0 |
Trabajos, casos prácticos, test | 17 |
0 |
Prácticas de laboratorio virtuales | 12 |
16,7% |
Tutorías | 16 |
30% |
Trabajo colaborativo | 7 |
0 |
Realización de examen final presencial | 2 |
100% |
Total | 150 |
- |
Bibliografía básica
Temas 5 y 7
Tema 8
Bibliografía complementaria
Cormen, T., Leiserson, C., Rivest, R. & Stein, C. (2009). Introduction to Algorithms. (pp. 308-309). MIT Press.
Eckel, B. (2007). Piensa en Java. Prentice Hall.
Folk, M. J. & Zoellick, B. (1992). File Structures (p. 362). Addison-Wesley.
Hernández Figueroa, Z. J., Rodríguez del Pino, J.C., González Domínguez, J.D., Díaz Roca, M., Pérez Aguilar, J.R., Rodríguez Rodríguez, G. (2016). Fundamentos de estructuras de datos. Soluciones en Ada, Java y C++. Madrid: Ediciones Paraninfo
Joyanes, L. & Zahonero-Martínez, I. (2007). Estructuras de datos en Java. (pp. 403-428). McGraw Hill.
Knuth, D. (1998). Sorting and searching, the art of computer programming. (pp. 481–491. y pp. 476–477). Addison-Wesley.
Pantoja, L., Pardo, C. (2017). Estructuras de datos dinámicas. Madrid: Editorial Ra-Ma.
Usón, R. (1987). Química: una ciencia experimental. Barcelona: Ed. Reverté.
Weiss, M.A. (2000). Estructuras de datos en Java. Addison Wesley.
El sistema de calificación se basa en la siguiente escala numérica:
0 - 4, 9 |
Suspenso |
(SS) |
5,0 - 6,9 |
Aprobado |
(AP) |
7,0 - 8,9 |
Notable |
(NT) |
9,0 - 10 |
Sobresaliente |
(SB) |
La calificación se compone de dos partes principales:
El examen se realiza al final del cuatrimestre y es de carácter PRESENCIAL y OBLIGATORIO. Supone el 60% de la calificación final y para que la nota obtenida en este examen se sume a la nota final, es obligatorio APROBARLO.
La evaluación continua supone el 40% de la calificación final. Este 40% de la nota final se compone de las calificaciones obtenidas en las diferentes actividades formativas llevadas a cabo durante el cuatrimestre.
Ten en cuenta que la suma de las puntuaciones de las actividades de la evaluación continua permite que realices las que prefieras hasta conseguir el máximo puntuable mencionado en la programación semanal. En ella se detalla la calificación máxima de cada actividad o evento concreto puntuables.
Para aprobar la asignatura será necesario aprobar cada una de las partes.
El sistema de evaluación de la asignatura es el siguiente:
SISTEMA DE EVALUACIÓN |
PONDERACIÓN MIN. |
PONDERACIÓN MÁX. |
Prueba de evaluación final presencial | 60% |
60% |
Evaluación de prácticas de laboratorios virtuales | 0% |
40% |
Resolución de trabajos, proyectos y casos | 0% |
40% |
Test de autoevaluación | 0% |
20% |
Participación en foros y otros medios participativos | 0% |
40% |
Natalia Padilla Zea
Formación: Ingeniera Técnica en Informática de Sistemas (2003) por la Universidad de Granada. Ingeniera en Informática (2005) por la Universidad de Granada. Doctora con mención europea (2011) por la misma Universidad, dentro del Programa de Doctorado de Desarrollo de Software, con Mención de Excelencia. Certificado de Aptitud Pedagógica (2008).
Experiencia: Profesora Adjunta en UNIR (2015-actualidad), perteneciendo al claustro de profesores de la Escuela Superior de Ingeniería y Tecnología. Imparte clases en el Grado en Informática, Máster de Aplicaciones Móviles y Máster de Ingeniería del Software y Sistemas Informáticos. Dirige Trabajos Fin de Máster en el Máster de E-Learning y Redes Sociales. Profesora Sustituta Interina (2013-2015) en Facultad de Educación, Economía y Tecnología de Ceuta (Universidad de Granada), impartiendo asignaturas del Dpto. de Lenguajes y Sistemas Informáticos. Contrato Post-doctoral (2011-2013) en el mismo departamento, impartiendo docencia en el Campus de Aynadamar. Contrato FPU (2009-2011) y beca FPU (2007-2009). Programadora y analista en la empresa Galdón Software, S. A., de aplicaciones a medida (ERP's) (2005-2007).
Líneas de investigación: Aprendizaje colaborativo, videojuegos educativos, diseño de videojuegos educativos. Pertenece al grupo TELSOCK, de UNIR. Colabora con el grupo GEDES de la Universidad de Granada y el grupo IDIS de la Universidad del Cauca (Colombia).
Obviamente, al tratarse de formación on-line puedes organizar tu tiempo de estudio como desees, siempre y cuando vayas cumpliendo las fechas de entrega de actividades, trabajos y exámenes. Nosotros, para ayudarte, te proponemos los siguientes pasos:
Recuerda que en el aula virtual de Lo que necesitas saber antes de empezar puedes consultar el funcionamiento de las distintas herramientas del aula virtual: Correo, Foro, Sesiones presenciales virtuales, Envío de actividades, etc.
Ten en cuenta estos consejos…
|