¿Cuáles son algunos buenos libros que vale la pena recomendar para aprender estructuras de datos (C++)?
El profesor Yuanbiao me recomendó anteriormente leer "Estructura de datos" para comenzar. Luego puede organizar cómo aprender la estructura de datos de acuerdo con su situación real. Mucha gente lee el libro una vez y luego lo implementa después de encontrar el algoritmo. Aquí hay algunos libros de algoritmos que conozco como referencia. (Solo he leído Introducción a los algoritmos, La belleza de la programación)
1. Introducción a los algoritmos de CLRS
Enciclopedia de algoritmos, después de hacer solo los ejercicios de la primera docena de capítulos, sentí que que me beneficié mucho.
2. Introducción a los Algoritmos
Breve y conciso, único y cuasi clásico. Una mala noticia: al igual que Introducción a los algoritmos, el libro no tiene respuestas a los ejercicios. Buenas noticias: los ejercicios son clásicos y moderadamente difíciles y puedes hacerlos tú mismo con sólo un poco de tiempo. La noticia no es ni buena ni mala: estoy escribiendo las respuestas a los ejercicios, he completado los tres primeros capítulos y todavía quedan nueve capítulos con unas 200 preguntas, si todo va bien, los publicaré en dos meses. También hay una versión china llamada "Introducción a los algoritmos". No la he leído, así que no sé qué tan bien está traducida. Si está dispuesto, intente leer la versión original. De hecho, el tiempo dedicado a leer la versión original y a leer la versión china no será muy diferente, porque la mayor parte del tiempo se dedica a hacer ejercicios.
Libros esenciales del dr. dobb sobre algoritmos y estructura daba
3. Diseño de algoritmos Diseño de algoritmos
Un libro muy clásico, lo leí hace mucho tiempo. lo siento. Es que ahora se me ha olvidado todo menos que es un clásico.
4. Construcción y explicación del programa informático SICP
No hace falta decir que el Libro de las Seis Estrellas no es un libro sobre algoritmos, pero leer este libro le ayudará a aprender más sobre algoritmos. .Comprender en profundidad qué es la recursividad. Siempre he hecho hincapié en los ejercicios. Después de leer este libro, al menos debes completar la mayoría de los ejercicios de los primeros cuatro capítulos. De lo contrario, es su arrepentimiento y el arrepentimiento del autor.
5. Matemáticas concretas
Algunas personas dicen que primero debes comprender el contenido de este libro antes de leer TAOCP. Si ese es el caso, es posible que no pueda leer TAOCP. . Leí la mayor parte en fragmentos y no tuve tiempo de digerir muchas cosas. Si eres un estudiante universitario que acaba de ingresar a la universidad y tienes mucho tiempo libre, entonces estás afortunado y feliz. Tómate unos meses para leer este libro con atención. La cosecha definitivamente superará tus expectativas.
6. Introducción al diseño y análisis de algoritmos Conceptos básicos del diseño y análisis de algoritmos
Un libro de algoritmos muy interesante con muchas preguntas interesantes que no se pueden encontrar en otros libros al leer este libro. Definitivamente te abrirá los ojos. Es realmente un libro imprescindible para viajes a casa y simulaciones de entrevistas.
7. La belleza de la programación: experiencia de entrevista técnica de Microsoft
Aunque es un libro de entrevistas, si se arrancan las primeras doce páginas, preferiría considerarlo como una entrevista. libro Un bosquejo de algoritmo que explica el pensamiento de resolución de problemas. En el libro, el autor generalmente ofrece una solución común y luego la optimiza y mejora una y otra vez. Puede ver claramente cómo se aplican las ideas básicas de diseño de algoritmos para resolver problemas prácticos. Si ya tiene algunos conocimientos básicos de algoritmos, la lectura de este libro debería poder mejorar sus capacidades de aplicación de algoritmos. Además, este libro es animado e interesante y también es adecuado para principiantes.
8. Fundamentos de algorítmica
Lo tomé prestado de la biblioteca de la escuela hace mucho tiempo. No recuerdo claramente el contenido. Solo recuerdo vagamente el capítulo de programación dinámica de este. libro para destacar. Debería ser un libro muy clásico. Personalmente creo que está a la par con los llamados clásicos contemporáneos, como Introducción a los algoritmos. Sin embargo, parece que no mucha gente lo ha mencionado.
9. Cómo resolverlo
La obra maestra de Polya, uno de los más grandes pensadores matemáticos del siglo XX, habla de métodos generales de resolución de problemas: Cómo entender los problemas, cómo transformar el problema, cómo resolverlo, cómo inspirarse en el problema, cómo encontrar una dirección que conduzca a la respuesta.
10. Programación de entrevistas expuestas Guía de entrevistas para programadores
Un libro recreativo. Personalmente, creo que es más pura que cierta "Guía de entrevistas XXX" nacional y al menos tiene contenido inspirador, no solo una biblioteca de preguntas de entrevistas.
11. Perlas de programación Perlas de programación
El aprendizaje de algoritmos no solo requiere habilidades internas y métodos mentales de gran peso como Alogritmos e Introducción a los algoritmos, sino que también requiere habilidades internas de gran peso como "La belleza de Programación" y "Perlas de programación" El ligero Qinggong Shenfa también es esencial. Hace unos años, ¿no eran muy populares en Internet preguntas de la entrevista de Baidu como "Dados mil millones de números, encuentre el número n más grande" o "Dados mil millones de números, encuentre el número que aparece más"? Después de leer este libro sabrás cómo solucionarlo. En comparación con "La belleza de la programación", los ejemplos de este libro son un poco menos técnicos, pero también son más valiosos para la aplicación práctica.
12. Concurso de Informática y Arte de Algoritmos
Si la Introducción a los Algoritmos es la Magia del Nueve Yang, entonces este libro es sin duda el Manual del Nueve Yin. Este libro está escrito especialmente para estudiantes que participan en algunos concursos de programación como ACM. La gente en el mundo lo llama el "libro negro". Habla de algunos algoritmos y estructuras de datos comúnmente utilizados en competencias de programación, así como algo de teoría de números y geometría computacional. Aunque no participo en competiciones, este libro me ha beneficiado mucho.
13. Introducción a la teoría de la probabilidad y sus aplicaciones
Iba a leerlo, pero ahora me doy cuenta de lo importante que es la teoría de la probabilidad, pero es una pena que no lo haya hecho. Lo estudié bien cuando era estudiante. No hace mucho, un compañero me hizo una pregunta. Le hice un programa hace mucho tiempo y dijo: ¿No es este el coeficiente de correlación? Excel puede hacerlo con un solo clic. Estoy mareado, realmente no sé cuál es el coeficiente de correlación.
14. Análisis numérico
Los autores de este libro son Richard L. Burden, J. Douglas Faires
Análisis numérico, que analiza varios algoritmos numéricos, como interpolación, ajuste, integración, solución de ecuaciones diferenciales, solución de ecuaciones lineales y no lineales, etc. Listo para ver en detalle.
15. TAOCP El arte de la programación informática
Mucha gente habla del legendario TAOCP, pero poca gente lo ve. Los cuatro volúmenes de TAOCP pueden denominarse Yi Jin Jing en el Pabellón de Algoritmos de Escrituras Tibetanas o las Setenta y dos Habilidades Especiales de Shaolin. Las mejores artes marciales del mundo se remontan a Shaolin, y los mejores algoritmos del mundo se remontan a TAOCP. Puede saber esto abriendo un libro de algoritmos y mirando sus citas. Solo he leído algunos capítulos del cuarto volumen. Aún no me he atrevido a leer los tres primeros volúmenes, y todavía están en espera indefinida en mi plan de lectura.