Estructuras de Datos y Algoritmos

Segundo Curso, Ingeniero en Informática

Dpto. de Matemáticas, Estadística y Computación
Facultad de Ciencias, Universidad de Cantabria

1. Profesores
2. Programa
3. Apuntes y Ejemplos
4. Paquete Fundamentos
5. Problemas
6. Prácticas
7. Exámenes anteriores

Esta es una asignatura de un plan de estudios a extinguir.

Se conserva la información en esta página para disponer de un registro histórico.

1. Profesores

2. Programa

Guía docente de la asignatura

1. Introducción

Estructuras de datos abstractas. Eficiencia de las estructuras de datos. Interfaces y herencia múltiple. Estructuras de datos genéricas. Colecciones. Iteradores.
Relaciones de igualdad y orden

2. Estructuras de datos lineales

Colecciones o bolsas. Conjuntos. Listas y vectores. Pilas. Colas. Mapas. Colas de prioridad. Aplicaciones

3. Estructuras de datos jerárquicas

Árboles. Recorrido y ordenación de los nudos. El ADT árbol. Árboles binarios. Búsqueda en árboles binarios. Aplicaciones

4. Grafos y caminos

Concepto de grafo. Definiciones. La interfaz de las aristas. La interfaz de los grafos. Recorridos y búsquedas. El problema del camino mínimo. Grafos acíclicos. Aplicaciones

5. Implementación de listas, pilas y colas

Introducción. Pilas, colas y vectores implementados mediante arrays. Implementaciones con listas enlazadas simples. Listas enlazadas con cursores. Listas doblemente enlazadas

6. Implementación de mapas, árboles y grafos

Mapas y conjuntos implementados mediante tablas de troceado. Técnicas de troceado abierto. Técnicas de troceado cerrado. Implementaciones de árboles. Implementaciones de árboles binarios. Árboles binarios equilibrados y conjuntos ordenados. Árboles AVL. Árboles rojinegros. B-árboles. Implementación de colas de prioridad y conjuntos ordenados mediante montículos binarios. Implementación de grafos

3. Apuntes y Ejemplos

Para ver los apuntes en formato pdf pinchar sobre el enlace correspondiente.

Programa

1. Introducción. Ejemplos.

2. Estructuras de datos lineales . Ejemplos. Ejemplos adicionales

3. Estructuras de datos jerárquicas . Ejemplos. Estructuras de datos: paquete adts

4. Grafos y caminos . Ejemplos.

5. Implementación de listas, colas y pilas . Ejemplos.

6. Implementación de mapas, árboles y grafos . Ejemplos.


4. Paquete Fundamentos

El paquete fundamentos es un conjunto de clases para entrada/salida gráfica. Está diseñado para esta asignatura y para otros alumnos que se inician en el lenguage Java y que no desean gastar mucho tiempo en aprender la interfaz gráfica completa, pero que quieren poder hacer programas vistosos con entrada/salida gráfica.

Para ver más información sobre el paquete fundamentos y poder descargarlo buscar en la página fundamentos. Aquí puedes encontrar unos apuntes que lo explican brevemente.

5. Problemas

Problemas para resolver en clase o en casa.
 

6. Prácticas

Prácticas obligatorias (y voluntarias). Las plantillas para los informes están en formato OpenOffice.
Software con estructuras de datos (árboles, árboles binarios y grafos): paquete adts

7. Exámenes anteriores

Una vez que ya se tiene experiencia con Java, es conveniente hacer ejercicios, para los que se os propone intentar resolver los ejercicios de exámenes anteriores.
 

Curso 2009-2010

Curso 2008-2009

Curso 2007-2008

Curso 2006-2007