Cinvestav
Departamento de Computación
Programación Avanzada
Contenido
- Conceptos básicos
- Proceso de desarrollo de un programa.
- Tipos de datos abstractos.
- Organización de código.
- Funciones.
- Punteros y manejo de memoria.
- Fugas de memoria.
- Estructuras de datos.
- Pilas, colas, listas, listas doblemente ligadas.
- Árboles: árboles, binarios, recorridos, balanceo, búsqueda.
- Algoritmos de búsqueda, ordenamiento y hash.
- STL (Standard Template Library)
- Vectores
- Iteradores.
- Vectores bidimensionales.
- Colas y listas.
- Lenguages con scripts
- Python
- shell bash
- awk
- sed
Bibliografía sugerida:
Reema Thareja. Data Structures Using C. Oxford University Press, Inc., New York, NY, USA. 2011.
Kernighan, Brian W., Rob Pike. El entorno de programaciÛn UNIX. Prentice-Hall Hispanoamericana, 1987.
Kernighan, Brian W., and Dennis M. Ritchie. El lenguaje de programación C. Pearson Educación, 1991.
Wall, Larry, Tom Christiansen, and Jon Orwant. Programming perl. O'Reilly Media, Inc., 2004.
Sanner, Michel F., Python: a programming language for software integration and development. J Mol Graph Model 17.1 (1999): 57-61.
Flanagan, David, and Yukihiro Matsumoto. The ruby programming language. O'Reilly Media, Inc., 2008.
Marquez, Francisco. Unix-Programacion Avanzada. Alfaomega Grupo Editor, 2005.