ZAHONERO MARTÍNEZ, IGNACIO / SÁNCHEZ GARCÍA, LUCAS / JOYANES, LUIS
Prólogo.PARTE I. ABSTRACCIÓN DE DATOS. Capítulo 1. Tipos abstractos de datos. Clases y objetos.Capítulo 2. Tipos de datos básicos. Arrays, cadenas y conjuntos.PARTE II. ANÁLISIS Y DISEÑO DE ALGORITMOS. Capítulo 3.Análisis y eficiencia de algoritmos.Capítulo 4. Algoritmos recursivos.Capítulo 5. Algoritmos de ordenación y búsqueda.Capítulo 6. Algoritmos de ordenación de archivos.PARTE 3. Estructuras de datos lineales. Capítulo 7. Listas. Capítulo 8. Pilas.Capítulo 9.Colas.Capítulo 10.Colas de prioridades y montículos.Capítulo 11.Tablas de dispersión, funciones Hash.PARTE 4. Estructuras de datos no lineales.Capítulo 12.Árboles.Capítulo 13.Árboles de búsqueda equilibrados. Capítulo 14.Arboles B. Capítulo 15.Grafos y sus operaciones. Capítulo 16.Grafos y sus aplicaciones. Capítulo 17.Contenedores, Genericidad, STL. APÉNDICES:A. Guía de sintaxis C++. B. Excepciones.C. Entrada y salida de archivos.BIBLIOGRAFÍA.
En esta obra se muestran técnicas de representación de estructuras de datos, utilizando como lenguaje contenedor C++. El contexto de las mismas de engloba en los siguientes principios: 1. Cada estructura de datos tiene sus costes y sus beneficios. Los programadores y diseñadores necesitan una comprensión rigurosa y completa de cómo evaluar los costes y beneficios para adaptarse a los nuevos retos que afronta la construcción de la aplicación. Estas propiedades requieren un conocimiento o comprensión de los principios de análisis de algoritmos y también una consideración práctica de los efectos significativos del medio físico empleado. 2. Los temas relativos a costes y beneficios se consideran dentro del concepto de elemento de compensación. 3. Esta edición, fundamentalmente, describe estructuras de datos, métodos de organización de grandes cantidades de datos y algoritmos, junto con el análisis de los mismos, en esencia, estimación del tiempo de ejecución de algoritmos. 4. Los datos estructurados siguen a las necesidades. Los estudiantes deben aprender a evaluar primero las necesidades de aplicación, a continuación, encontrar una estructura de datos en correspondencia con sus funcionalidades. 5. El método didáctico que sigue es buscar preferentemente enseñar a pensar en la resolución de un problema, siguiendo un determinado método ya conocido o bien creado por el propio lector, una vez esbozado el método, se estudia el algoritmo correspondiente junto con las etapas que pueden resolver el problema.