Programación y Estructuras de Datos


Verano 2015

Dr. René Cumplido. Contacto: rcumplido(at)inaoep.mx
Horario: Lunes 15 - Jueves 18 de Junio, de (por definir) a (por definir). Salón del edif. Chavira

Introducción

Se espera que el/la estudiante que ingrese a la maestría, domine detalladamente conceptos de programación y estructuras de datos con un enfoque orientado a objetos, a través de su implementación en C++. Esto incluye las siguientes habilidades: Temas específicos a dominar:

1. Fundamentos de programación

1.1. Principios de Ingeniería de software
1.2. C++ Sintaxis y semántica
1.3. Condiciones expresiones lógicas, estructuras de selección y ciclos
1.4. Funciones
1.5. Tipos de datos simples
1.6. Tipos de datos estructurados
1.7. Recursión

2. Desarrollo orientado a objetos

2.1. Objetos,
2.2. Herencia y polimorfismo
2.3. Composición

3. Apuntadores

3.1. Variables y expresiones apuntador
3.2. Tipos de referencia
3.3. Datos dinámicos y clases

4. Diseño de datos e implementación

4.1. Vistas diferentes de los datos
4.2. Tipos de datos abstractos
4.3. Abstracción de alto nivel y la clase Type
4.4. Comparación de algoritmos

5. La estructura abstracta lista
5.1. El concepto de lista desordenada
5.2. Implementación de una estructura lista desordenada
5.3. El concepto de lista ordenada
5.4. Implementación de una lista ordenada

6. Pilas y Colas

6.1. El concepto de pila
6.2. Implementación de pilas como una estructura ligada
6.3. El concepto de cola
6.4. Implementación de cola como una estructura ligada
6.5. Listas circulares
6.6. Listas doblemente ligadas

7. Árboles

7.1. El concepto de árbol
7.2. Implementación de árboles
7.3. Búsqueda binaria recursiva en árboles
7.4. Inserción y borrado en árboles
7.5. Árboles ordenados (heaps)

8. Grafos

8.1. Representaciones matriciales,
8.2. Recorridos
8.3. Algoritmos de búsqueda de rutas

9. Tablas Hash

Material de apoyo

El siguiente material se presenta únicamente como material de apoyo. Durante el curso no se cubrirá todo el material, únicamente se hará un repaso de los aspectos más relevantes.

Por temas

NB. Material tomado de Dale, N. Weems, C++ Plus Data Structures 4th. Ed. 2007 Instructor material, © Jones & Barlett Publishers

Material Corto 2015

Bibliografía Sugerida (*recomendados)