¿Cuáles son algunos buenos libros para aprender algoritmos y estructuras de datos usando Java?

Los 5 libros principales sobre estructura de datos y algoritmos que me gustaría recomendar:

  • Introducción a los algoritmos por Thomas H. Cormen Este es uno de los mejores libros sobre algoritmos informáticos, está escrito por cuatro autores, uno de ellos es Thomas H. Cormen, cuyo otro libro Algoritmo desbloqueado es también el libro más recomendado para aprender algoritmos. Este libro es mucho más completo y cubre muchos algoritmos diferentes y técnicas avanzadas de resolución de problemas, por ejemplo, algoritmos codiciosos, programación dinámica, análisis amortizado, junto con estructuras de datos elementales como pilas y colas, matriz y lista vinculada, tablas Hash, árbol y Grafico.
  • El Manual de diseño de algoritmos de Skiena : muchos problemas algorítmicos y debates, historias de guerra, problemas relacionados, ejercicios interesantes. Ayuda a modelar un problema de diferentes maneras. Un libro de trabajo imprescindible para todo programador apasionado. No lea esto a menos que tenga una buena comprensión de los algoritmos.
  • Algorithms (4th Edition) por Robert Sedgewick, Kevin Wayne – Libro de nivel relativamente principiante, cubre gráficos, cadenas, hash, búsqueda, clasificación, etc. muy bien. Sigue el enfoque OOP en Java. Muy recomendable para principiantes, aunque nada detiene a un profesional. Portal web que contiene muchos ejercicios interesantes. Hay otros libros de Sedgewick sobre Algoritmos. Recomendado para el aprendizaje de estructura de datos.
  • The Art of Computer Programming, 1st Edition por Donald E. Knuth   El arte de la programación de computadoras proporciona una descripción completa de una amplia variedad de algoritmos y el análisis. El primer libro comienza con preliminares matemáticos, pilas, colas, listas, matrices y árboles, y presenta implementaciones. El volumen 2 de la serie clásica de Donald Knuth, The Art of Computer Programming, abarca algoritmos seminuméricos. El tercer volumen es la encuesta más completa de las técnicas informáticas clásicas para clasificar y buscar.
  • Algorithm Design (English) 1st Edition   – Un libro excelente que tiene un buen flujo y se puede leer con la facilidad de leer una historia. Excelentes conexiones entre capítulos y todos los conceptos explicados de una manera simple y laica. He leído parte de CLRS pero me aburrí en el medio, pero tener este libro me ayudó mucho a comprender los conceptos de algoritmos.
    NB: se recomienda leer CLRS después de leer este libro para profundizar en los conceptos.

Puede comenzar con “ Resolución de problemas en estructuras de datos y algoritmos ” escrito en varios lenguajes como C, C ++, Java, C #, Python, etc. Estos libros son fáciles de seguir y están escritos para el punto de vista de la entrevista . Además, estos libros tienen el último capítulo sobre Diseño de sistemas , que también se requiere en las entrevistas.

Los enlaces de los libros en Amazon están abajo:

1. Resolución de problemas en estructuras de datos y algoritmos utilizando C

2. Resolución de problemas en estructuras de datos y algoritmos usando C ++

3. Resolución de problemas en estructuras de datos y algoritmos utilizando Java

4. Resolución de problemas en estructuras de datos y algoritmos con C #

5. Resolución de problemas en estructuras de datos y algoritmos usando Python

Según yo, los mejores recursos son:

ftp://91.193.236.10/pub/docs/lin

http://citc.ui.ac.ir/zamani/clrs

Ya sea:

Estructuras de datos y algoritmos en Java (2ª edición) por Lafore Estructuras de datos y algoritmos en Java (2ª edición)

O:

Estructuras de datos y algoritmos simplificados en Java: estructura de datos y algoritmos algorítmicos por Kuramanch Estructuras de datos y algoritmos simplificados en Java: estructura de datos y algoritmos algorítmicos

Estoy a punto de comprar uno si esos pero no puedo decidir

Estructuras de datos y algoritmos simplificados: Narasimha Karumanchi

Programación de entrevistas expuestas

Algoritmos en Java, 3ra Ed., Parte 1-4 – Robert Sedgewick

Introducción a los algoritmos

Donald Knuth, El arte de la programación de computadoras