Estructuras de Datos I

Temario

Tema 1: Tipos abstractos de datos 

Duración en horas (aprox.): 3T + 2PA
Objetivos:
- Profundizar en el concepto de abstracción.
- Entender lo que es un tipo abstracto de datos.
- Ser capaz de identificar, implementar y utilizar tipos abstractos de datos.
Contenidos:
Tipos de datos y estructuras de datos, tipos abstractos de datos, especificación abstracta, interfaz, implementación, encapsulamiento, ocultación de información, operaciones: generadoras, constructoras, accesoras, modificadoras, asignación y copia, taxonomía de los tipos abstractos de datos y de las estructuras de datos, isomorfismo.

Tema 2: Contenedores asociativos e iteradores

Duración en horas (aprox.): 3T + 2PA
Objetivos:
- Entender lo que es un contenedor asociativo.
- Entender lo que es un iterador.
- Ser capaz de identificar, implementar y utilizar contenedores asociativos e iteradores.
Contenidos:
Contenedores asociativos (conjuntos y tablas). Iteradores. 

Tema 3: Contenedores lineales

Duración en horas (aprox.): 9T + 4PA
Objetivos:
- Entender lo que es una estructura lineal.
- Conocer un abanico de contenedores lineales de aplicación corriente.
Contenidos:
Organización lineal, listas, listas aleatorias, listas secuenciales, listas ordenadas, pilas, colas, colas con prioridad, aplicaciones de contenedores lineales.

Tema 4: Estructuras arbóreas

Duración en horas (aprox.): 10T + 4PA
Objetivos:
- Entender lo que es una estructura arbórea.
- Conocer diferentes variedades y aplicaciones de estructuras arbóreas.
Contenidos:
Organización jerárquica, árboles generales y n-arios, relaciones de parentesco y taxonómicas, recorridos, árboles binarios, equivalencia entre árboles generales y binarios, árboles basados en la ordenación de sus elementos, aplicaciones de árboles.

Tema 5: Grafos 

Duración en horas (aprox.): 5T + 3PA
Objetivos:
- Introducir los grafos como estructura abstracta capaz de representar relaciones complejas entre datos.
Contenidos:
Organización en red, grafos orientados y no orientados, recorridos, búsqueda de caminos, grafos de costes, algoritmos de análisis y manipulación de grafos (Dijkstra, Floyd, Warshall, etc.), aplicaciones de grafos.