Estructura de datos y algoritmos en Java - Drozdek, Adam (Thomson)
Contenido: 1. Programación Orientada a Objetos utilizando Java; 2. Análisis de la complejidad; 3. Listas ligadas; 4. Pilas y colas; 5. Recursividad; 6. Arboles binarios; 7. Arboles de múltiples caminos; 8. Grafos; 9. Ordenación; 10. Hashing; 11. Compresión de datos; 12. Administración de memoria; 13. Correspondencia de cadenas; Apéndices: A. Computación de orden O; B. Complenitud NP.