Departamento de Ciencias de la Computación e Inteligencia Artificial

Trabajos Fin de Máster

Unidad de Trabajo: Estructuras Dinámicas de Datos en C

Unidad de trabajo: Estructuras de datos dinámicas en C
Este TFM se ha desarrollado dentro del Máster Universitario en Profesorado de Educación Secundaria Obligatoria y Bachillerato, Formación Profesional y Enseñanza de Idiomas. Especialidad: Tecnología, Informática y Procesos Industriales, en el año 2011. En él, el alumno elabora una unidad de trabajo.

Esta unidad de trabajo se enmarca dentro del Módulo Profesional Fundamentos de Programación que se imparte en el primer curso del Ciclo Formativo de Grado Superior del título de Técnico Superior en Administración de Sistemas Informáticos de la familia profesional de Informática. El desarrollo didáctico y la programación de dicho móludo se obtienen a partir del perfil del ciclo formativo Administración de Sistemas Informáticos.

En esta unidad de trabajo, en primer lugar se explica la necesidad de un nuevo tipo de variable que permita a los programas adquirir posiciones adicionales de memoria a medida que se necesiten durante la ejecución del programa, y liberarlas cuando ya no sean necesarias. Para ello, se introduce el concepto de puntero y su importancia en el manejo de las estructuras dinámicas de datos.

A continuación, se hace un breve repaso de las estructuras de datos simples y estructuras compuestas como registros y arrays, prestando especial atención a las limitaciones que presentan las estructuras estáticas, en especial a la necesidad de previsión de su espacio en memoria y la imposibilidad de cambiarlo en tiempo de ejecución. Como solución a algunos de los problemas planteados se introduce el concepto de estructura dinámica de datos como una colección de elementos o nodos cuya implementación se realiza normalmente con registros y se estudiará su clasificación.

Una vez introducidos los conceptos de puntero y nodo como parte fundamental de las estructuras dinámicas de datos, y vista su clasificación, se procede al análisis detallado de cada una de ellas; comenzaremos por las estructuras tipo pilas, colas y varios tipos de listas. Para concluir con la parte teórica se estudiarán árboles y grafos.

El tramo final de la Unidad de Trabajo está dedicado a la implementación en lenguaje C de los algoritmos más importantes que se estudiaron en pseudocódigo en las sesiones anteriores. Se proponen variaciones de los mismos con el fin de consolidar los conocimientos adquiridos en las sesiones teóricas y motivar al alumnado a que compruebe resultados e investigue posibles errores e inconvenientes que pueden ir apareciendo durante el ejercicio de la programación.



Si desea ampliar la información sobre la dirección de este trabajo debe ponerse en contacto conmigo a través de correo electrónico.