Datos Identificativos 2012/13
Asignatura (*) Estrutura de Datos e da Información Código 614311102
Titulación
Enxeñerio Técnico en Informática de Sistemas
Descriptores Ciclo Período Curso Tipo Créditos
1º e 2º Ciclo 2º cuadrimestre
Primeiro Troncal 6
Idioma
Castelán
Prerrequisitos
Departamento Computación
Coordinación
Hernandez Pereira, Elena Maria
Correo electrónico
elena.hernandez@udc.es
Profesorado
Hernandez Pereira, Elena Maria
Correo electrónico
elena.hernandez@udc.es
Web
Descrición xeral La asignatura se podría englobar en el bloque temático de
asignaturas relacionadas con la Ingeniería del Software, dentro
del cual esta asignatura constituye una disciplina totalmente
básica. En este grupo, las relaciones más estrechas se establecen
con Bases de Datos I, Algoritmos, Metodología de la Programación y
Programación Orientada a Objetos.

Un segundo bloque temático de asignaturas relacionadas es el que
podríamos denominar Fundamentos Matemáticos, y dentro de este
grupo, especialmente con la asignatura Matemática Discreta I.

Respecto al perfil profesional, muchas áreas de la computación
requieren la habilidad de trabajar con las estructuras de datos
que se estudian en esta asignatura.

Competencias do título
Código Competencias da titulación
A1 Analizar novas técnicas e ferramentas do mercado estudando a súa viabilidade e necesidade. Posibilidade de contratar recursos externos.
A2 Controlar e xestionar o desenvolvemento informático.
A3 Interpretar as especificacións funcionais encamiñadas ao desenvolvemento das aplicacións informáticas.
A4 Integrar sistemas informáticos existentes susceptibles de se interrelacionaren.
A5 Dirixir, planificar e coordinar a xestión da infraestrutura de redes e comunicacións.
A6 Xestionar, desenvolver e manter grandes redes.
A7 Xestionar grandes proxectos de cableado de redes.
A8 Asegurar a integridade dos datos e a existencia de protocolos de seguranza.
A9 Escoitar e asesorar os usuarios na resolución dos problemas que se lles presentan co uso dos sistemas informáticos.
A10 Asesorar os programadores nos problemas que se lles presentan coa programación dos sistemas.
B1 Aprender a aprender.
B2 Resolver problemas de forma efectiva.
B3 Aplicar un pensamento crítico, lóxico e creativo.
B4 Aprendizaxe autónoma.
B5 Traballar de forma colaborativa.
B6 Comportarse con ética e responsabilidade social como cidadán e como profesional.
B7 Comunicarse de maneira efectiva en calquera contorno de traballo.
B8 Traballar en equipos de carácter interdisciplinar.
B9 Capacidade para tomar decisións.
B10 Capacidade de xestión da informática (captación e análises da información).
B11 Razoamento crítico.
B12 Capacidade para a análise e a síntese.
B15 Motivación pola calidade.
C1 Expresarse correctamente, tanto de forma oral coma escrita, nas linguas oficiais da comunidade autónoma.
C2 Dominar a expresión e a comprensión de forma oral e escrita dun idioma estranxeiro.
C3 Utilizar as ferramentas básicas das tecnoloxías da información e as comunicacións (TIC) necesarias para o exercicio da súa profesión e para a aprendizaxe ao longo da súa vida.
C4 Desenvolverse para o exercicio dunha cidadanía aberta, culta, crítica, comprometida, democrática e solidaria, capaz de analizar a realidade, diagnosticar problemas, formular e implantar solucións baseadas no coñecemento e orientadas ao ben común.
C6 Valorar criticamente o coñecemento, a tecnoloxía e a información dispoñible para resolver os problemas cos que deben enfrontarse.
C7 Asumir como profesional e cidadán a importancia da aprendizaxe ao longo da vida.
C8 Valorar a importancia que ten a investigación, a innovación e o desenvolvemento tecnolóxico no avance socioeconómico e cultural da sociedade.

Resultados de aprendizaxe
Competencias de materia (Resultados de aprendizaxe) Competencias da titulación
Conocer los mecanismos de abstracción en el diseño de estructuras de datos A1
A6
A9
B1
B2
B3
B4
B5
B9
B10
B11
B12
B15
C3
C6
Comprender el concepto de Tipo Abstracto de Datos en programación operacional A6
A8
B2
B3
B4
B5
B9
B11
B12
B15
C3
C6
Distinguir los niveles de especificación, implementación y uso para el diseño de tipos abstractos de datos. A6
A8
A9
B2
B3
B4
B5
B11
B12
B15
C3
C6
Reconocer las estructuras de datos elementales que se necesitan para resolver un problema. A5
A6
A8
A9
A10
B2
B3
B4
B5
B9
B10
B11
B12
B15
C3
C6
Construir una especificación formal de un tipo abstracto de datos para resolver un problema. A3
A4
A5
A8
A9
B2
B3
B4
B5
B9
B10
B11
B12
B15
C3
C6
Diseñar tipos abstractos de datos a partir de una especificación formal. A3
A4
A5
A8
A9
B2
B3
B4
B5
B9
B11
B12
B15
C3
C6
Programar los algoritmos de manipulación de las estructuras de datos diseñadas. A2
A4
A6
A7
A10
B2
B3
B5
B6
B7
B8
B11
B15
C3
C6
C8
Usar las estructuras de datos para solucionar problemas reales. A1
A4
A6
A7
A8
A9
B2
B3
B5
B6
B7
B8
B9
B15
C3
C6
Asumir la necesidad de una buena especificación y un buen diseño como pasos previos a la codificación. A1
B6
B11
B15
C1
C2
C4
C6
Interiorizar las buenas prácticas de programación. A1
A2
A4
A6
A7
B6
B11
B12
B15
C7
C8

Contidos
Temas Subtemas
Gestión dinámica de memoria Organización de la memoria de un programa.
Definición de variables de tipo puntero.
Reserva y destrucción dinámica de memoria.
Asignación y comparación.
Recursividad El concepto de recursión.
Principios de diseño de subprogramas recursivos.
Ejemplos de subprogramas recursivos.
La recursión con respecto a la iteración.
Algoritmos recursivos de ordenación.
Introducción a los Tipos Abstractos de Datos La abstracción en programación: Concepto, Evolución a través de la historia de la programación, TAD y Programación orientada a objetos.
La modularidad en programación.
Tipos Abstractos de Datos: Definición y concepto, Diferencias entre tipo de dato, estructuras de datos y TAD, Construcción de un TAD, Ventajas de la abstracción de datos.
Listas Especificación informal del TAD Lista.
Implementación del TAD Lista.
El TAD Lista ordenada: especificación e implementación.
Multilistas y listas multiordenadas: concepto, representaciones y usos.
Pilas Especificación informal del TAD Pila.
Implementación del TAD Pila.
Aplicaciones en computación.
Colas Especificación informal del TAD Cola.
Implementación del TAD Cola.
Variantes de las colas. Colas de prioridad.
Aplicaciones en computación.
Árboles Definición de árbol y terminología
Árboles binarios: Especificación informal, Implementación.
Variantes de árboles binarios: Especificación e implementación de operaciones.
Árboles de búsqueda Árboles binarios de búsqueda.
Árboles AVL.

Planificación
Metodoloxías / probas Horas presenciais Horas non presenciais / traballo autónomo Horas totais
Solución de problemas 0 85 85
Lecturas 0 30 30
Proba obxectiva 3 24 27
 
Atención personalizada 8 0 8
 
*Os datos que aparecen na táboa de planificación son de carácter orientativo, considerando a heteroxeneidade do alumnado

Metodoloxías
Metodoloxías Descrición
Solución de problemas Resolución de ejercicios por parte del alumno. Consulta en horas de tutoría.
Lecturas Estudio de notas y documentación de la asignatura. Consulta en horas de tutoría.
Proba obxectiva Evaluación sumativa del alumno mediante un examen final al término del cuatrimestre. Éste será eminentemente práctico para que el alumno pueda demostrar que ha
adquirido los conocimientos necesarios de abstracción y diseño de TADs y se ha entrenado lo suficiente como para poseer las habilidades precisas para resolver supuestos prácticos que impliquen la aplicación de dichas estructuras. La puntuación asignada a cada una de las preguntas del examen irá consignada en la prueba.

Atención personalizada
Metodoloxías
Solución de problemas
Lecturas
Descrición
Se realizará a través de las tutorías una atención específica a aquellos alumnos que presenten mayores dificultades en la tarea del aprendizaje, así como a aquellos otros que presenten mayor desenvoltura y deseen ampliar conocimientos.

Avaliación
Metodoloxías Descrición Cualificación
Proba obxectiva Realizacion obligatoria. Necesario aprobar la prueba para superar la asignatura. 100
 
Observacións avaliación

Fontes de información
Bibliografía básica Liskov, B. y Guttag, J. (1989). Abstraction and specification in program development.. The MIT Press
Standish, T.A. (1994). Data structures, algorithms, and software principles.. Addison-Wesley
Cairó O. y Guardati S. (1993). Estructuras de datos. McGraw-Hill Interamericana de México, S.A. de C.V.
Weiss, M.A. (1995). Estructuras de datos y algoritmos.. Wilmington, Delaware. Addison-Wesley Iberoamericana
Joyanes Aguilar, L. y Zahonero Martínez, I. (1998). Estructuras de Datos: algoritmos, abstracción y objetos.. Madrid. McGraw-Hill/Interamericana de España
Collado Machuca, M., Morales Fernández, R. y Moreno Navarro, J.J. (1987). Estructuras de Datos: Realización en Pascal. Madrid. Diaz de Santos
Carmona Poyato, A., Merina Carnicer, R., Madrid Cuevas, F.J., Romero del Castillo J.A., Fernández Ga (1999). Pascal y Estructuras de datos. Servicio Publicaciones, Universidad de Córdoba.
Dale, N. y Lilly, S.C. (1989). Pascal y Estructuras de datos (segunda edición). Madrid. McGraw-Hill/Interamericana de España

Bibliografía complementaria Aho, A.V., Hopcroft, J.E. y Ullman, J.D. (1988). Estructuras de datos y algoritmos.. Wilmington, Delaware. Addison-Wesley Iberoamericana
Hernández, R., Lázaro, J.C., Dormido, R. y Ros, S. (2001). Estructuras de datos y algoritmos.. Madrid. Prentice Hall
Horowitz, E. y Sahni, S. (1990). Fundamentals of Data Structures in Pascal.. Rockville, Maryland. Computer Science Press

Página oficial de FreePascal: http://www.freepascal.org/

Manual de FreePascal en castellano:


Recomendacións
Materias que se recomenda ter cursado previamente
Bases de Datos I/614311201
Programación Orientada a Obxectos/614311636

Materias que se recomenda cursar simultaneamente

Materias que continúan o temario
Matemática Discreta/614311107
Programación/614311109

Observacións


(*)A Guía docente é o documento onde se visualiza a proposta académica da UDC. Este documento é público e non se pode modificar, salvo casos excepcionais baixo a revisión do órgano competente dacordo coa normativa vixente que establece o proceso de elaboración de guías