Este documento presenta la asignatura Estructura de Datos, la cual enseña a estudiantes de ingeniería a seleccionar, diseñar e implementar estructuras de datos a gran escala usando programación orientada a objetos. Los objetivos incluyen conocer lenguajes orientados a objetos, técnicas de programación como memoria dinámica y estructuras de datos enlazadas, y herramientas de diseño de algoritmos. El contenido cubre temas como arreglos, colas, pilas, listas enlazadas y árboles
1. UNIVERSIDAD COOPERATIVA DE COLOMBIA – CALI
FACULTAD DE INGENIERÍA
PROGRAMA DE INGENIERÍA SISTEMAS
ASIGNATURA ESTRUCTURA DE DATOS
OBJETIVO GENERAL
Enseñar al estudiante a seleccionar, diseñar, implementar y manipular estructuras de
datos a gran escala utilizando la programación orientada a objetos, que optimicen el
rendimiento de aplicaciones de software tanto de la memoria como del procesados,
basadas en un paradigma y considerando la complejidad de los algoritmos utilizados.
OBJETIVOS ESPECIFICOS
Conocer mejor cómo es un lenguaje de programación, en particular un lenguaje
orientado a objetos, se estudiarán los tipos abstractos de datos utilizando clases
aspectos como son la estructura de control, los tipos de datos, la gestión de
memoria y los mecanismos de abstracción de un lenguaje de
estas características.
Conocer nuevas técnicas de programación. En particular, el uso de la memoria
dinámica y las estructuras de datos enlazadas, que están en la base de muchas
aplicaciones.
Introducir herramientas de diseño de algoritmos y la ingeniería algorítmica
como selección de las estructuras de datos y de las técnicas algorítmicas más
adecuadas para la resolución de un problema concreto.
Profundizar en el aprendizaje de la programación estructurada. Introducir
técnicas para diseñar programas de tamaño mediano. Proporcionar al alumno
más experiencia en el campo de la programación mediante la realización de
prácticas.
Ampliar el dominio de la recursividad como herramienta de construcción de
programas.
CONTENIDO DE LA ASIGNATURA
1 ARREGLOS
1.1 De una dimensión
1.2 De dos dimensiones
1.3 De tres o más dimensiones
1.4 Matrices poco densas regulares
1.5 Matrices poco densas irregulares
2. 1.6 Ordenaciones
1.7 Búsquedas
1.8 Mezclas
1.9 Manejo de memoria estática y dinámica
1.9 Operaciones en arreglos
1.9.2 Recursividad
1.9.3 Tipo Abstracto de datos
2 COLAS
2.1 Cola circular
2.2 Doble cola
2.3 Cola de prioridades
2.4 Representación en memoria
2.5 Operaciones en colas
2.6 Problemas
3 PILAS
3.1 Representación en memoria
3.2 Notación infija, prefija y postfija en expresiones
3.3 Recursividad
3.4 Implementar la recursividad usando pilas
3.5 Operaciones en pilas
3.6 Problemas
4 LISTAS ENLAZADAS ( ENCADENADAS)
4.1 Representación en memoria
4.2 Lista con cabeceras
4.3 Listas dobles
4.4 Operaciones en listas enlazadas
4.5 Recuperación de espacio en listas enlazadas
4.6 Problemas
5 ARBOLES BINARIOS
5.1 Terminología
5.2 Arboles binarios y representación gráfica
5.3 Representación de A. B. en memoria
5.4 Recorrido de un A. B. (Inorden, preorden, y postorden)
5.5 Arboles enhebrados. Nodo cabecera
5.6 Operaciones en A. B.
5.7 Arboles en montón
5.8 Arboles binarios de búsqueda
3. FORMA DE EVALUAR
NOTA 1 TALLERES 30% 25,00%
EXAMEN 70%
NOTA 2 TALLERES 30% 25,00%
EXAMEN 70%
NOTA 3 TALLERES 30% 25,00%
EXAMEN 70%
NOTA 4 TALLERES 30% 25,00%
EXAMEN 70%
TOTAL 100,00%
BIBLIOGRAFIA
Libros guia
• Joyanes Aguilar. Estructura de datos en Java. Madrid: Mac Graw Hill, 2010.
• Weiss, Marck. Estructura de datos y algoritmos. Argentina: Addison- Wesley 2006.
• Becerra S, Cesar. Estructura de datos en java. Bogota. Editorial Kimpres, 2009
Otros textos que pueden servir como referencia bibliografica
• Langsam, Yedidah. “ ESTRUCTURA DE DATOS CON C Y C++ “. Mexico :
Prentice Hall 1196, 1996 . ISBN 13 – 036997-7
• Becerra Santamaría, César. “ ESTRUCTURA DE DATOS EN C++”. Bogota :
Editorial Kimpres, 2002.
• Loomis, Mary. “ ESTRUCTURA DE DATOS Y ORGANIZACIÓN DE
ARCHIVOS “. Mexico: Editorial Prentice Hall, 1989 .ISBN 0 – 13- 198342- 3
• Kruse L, Robert. “ ESTRUCTURA DE DATOS Y DISEÑO DE ALGORITMOS “.
Mexico: Prentice Hall, 1988. ISBN 968-880-073-2.
• Franch G, Xavier. “ ESTRUCTURAS DE DATOS “. Mexico : Editorial Alfa
Omega 2002.ISBN 970-15-0773-8
• Cairo’, Osvaldo. “ ESTRUCTURAS DE DATOS “. Mexico: Mc Graw Hill 2002.
ISBN 970-10-3534-8.
• Villalobos, Jorge. “ DISEÑO Y MANEJO DE ESTRUCTURAS DE DATOS EN C
“. Bogota: Mc Graw Hill 1996. ISBN 958-600-505-4.