¿Hay algún libro sobre estructuras de datos y algoritmos que tenga estructuras de datos diferentes, su complejidad, sus usos y todas las cosas interesantes sobre ellos?

“Estructuras de datos y algoritmos” es el tema favorito de las empresas entrevistadas. Puede comenzar con la resolución de problemas en estructuras de datos y libros de algoritmos.

“Resolución de problemas en estructuras de datos y algoritmos” es una serie de libros sobre el uso de estructuras de datos y algoritmos en la programación de computadoras. El libro es fácil de seguir y está escrito para el punto de vista de preparación de la entrevista . En varios libros, los ejemplos se resuelven en varios lenguajes como C, C ++, Java, C #, Python, VB, JavaScript y PHP.

Composición del libro
Este libro está diseñado para entrevistas, por lo que en el Capítulo 0 se proponen varios planes de preparación . Luego, en los capítulos 1, se explica una breve introducción del lenguaje de programación y el concepto de recursión. Se explican varios problemas basados ​​en recursividad y matriz.

Luego, en el próximo capítulo, analizaremos el análisis de complejidad. Luego analizaremos las técnicas de clasificación y búsqueda.

Luego estudiará las diversas estructuras de datos y sus algoritmos. Buscaremos en una lista vinculada, pila, cola, árboles, montón, tabla hash y gráficos.

Luego, analizaremos el análisis de algoritmos, analizaremos los algoritmos de fuerza bruta, los algoritmos codiciosos, los algoritmos de división y conquista, la programación dinámica y el retroceso.

Al final, analizaremos el diseño del sistema , que proporcionará un enfoque sistemático para resolver los problemas de diseño en una entrevista.

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

Tabla de contenido
Capítulo 0: Cómo usar este libro.
Capítulo 1: Introducción – Descripción general de la programación
Capítulo 2: Análisis de Algoritmos
Capítulo 3: Enfoque para resolver problemas de diseño de algoritmos
Capítulo 4: Tipo de datos abstractos
Capítulo 5: Búsqueda
Capítulo 6: Clasificación
Capítulo 7: Lista vinculada
Capítulo 8: Pila
Capítulo 9: Cola
Capítulo 10: Árbol
Capítulo 11: Cola prioritaria
Capítulo 12: Hash-Table
Capítulo 13: Gráficos
Capítulo 14: Algoritmos de cadena
Capítulo 15: Técnicas de diseño de algoritmos
Capítulo 16: Algoritmo de fuerza bruta
Capítulo 17: Algoritmo codicioso
Capítulo 18: Divide y vencerás
Capítulo 19: Programación dinámica
Capítulo 20: Retroceso
Capítulo 21: Teoría de la complejidad
Capítulo 22: Estrategia de entrevista
Capítulo 23: Diseño del sistema

Esa es una tarea tremendamente difícil, porque hay muchos algoritmos y estructuras de datos por ahí, y muchos de ellos están bastante estudiados. Puede obtener una visión general bastante buena de los más populares de un texto de nivel universitario como Introducción a los algoritmos, de Corman, Leierson, Rivest y Stein. http://www.amazon.com/Introduction-Algorithms-3rd-Thomas-Cormen/dp/0262033844/

Tenía el libro de Corman en la universidad y, aunque tiene mucha información, he oído que hay un texto de los algoritmos de Sedgewick (4a edición): Robert Sedgewick, Kevin Wayne: 9780321573513: Amazon.com: libros que explica mejor las cosas. El libro de Corman estaba más basado en las matemáticas y requiere al menos una base decente en Matemática discreta.

Alrededor del 90% de las estructuras de datos comunes son efímeras (cuando las actualiza de alguna manera, no puede usar la versión anterior, o usar la versión anterior arruina completamente la complejidad de la operación). Recomiendo un libro sobre estructuras de datos persistentes (estructuras de datos diseñadas para guardar y usar todas las versiones anteriores de la estructura de datos) “Estructuras de datos puramente funcionales” escritas por Chris Okasaki.