Red de conocimiento informático - Conocimiento del nombre de dominio - ¿Cómo aprender algoritmos paso a paso? ¿Qué hacen los algoritmos por los programadores?

¿Cómo aprender algoritmos paso a paso? ¿Qué hacen los algoritmos por los programadores?

En primer lugar, para la mayoría de los programadores, no es necesario aprender algoritmos en el trabajo, pero si desea encontrar un trabajo, especialmente si acaba de graduarse de la escuela y desea ingresar a algunas grandes empresas (BAT, etc.), Debe aprender algoritmos.

Además, en el proceso de mejorar el nivel técnico, como mirar algunos códigos excelentes, también se requieren habilidades algorítmicas, como mirar el código fuente de leveldb y redis. la tabla de salto. ¿Qué es? Para ver el código del sistema de archivos del kernel de Linux, debes saber qué es un árbol rojo-negro.

Luego hay otro impacto muy importante: si aprendes bien la aritmética, será de gran beneficio para tu forma de pensar sobre los problemas y tu forma de programar.

Además, Leetcode sigue siendo el mejor sitio web para preguntas sobre cepillado.

Si tienes algunos conocimientos básicos de algoritmos, te recomendamos utilizar Codeforces.

En cuanto a libros, no hay mucha demanda de libros ahora, hay mucha información en Internet, solo busca en Google y podrás encontrar muchos detalles.

No se recomienda a los principiantes leer "Introducción a los algoritmos". Aunque este libro es un libro mágico, el umbral para este libro es relativamente alto. Requiere que personas con cierta base en matemáticas y algoritmos lo aprendan. Si no tienes cierta base o un interés fanático en aprender algoritmos, es necesario. Te resultará difícil leerlo.

La estructura de la lista de puntos de conocimiento se ha cambiado y se ha dividido en categorías, lo que puede hacerla más clara. Esto es lo básico que creo que se debe dominar. El nivel intermedio es el mejor para aprender si hay espacio para ello. El nivel avanzado se puede entender, se puede entender un poco y se puede estudiar en profundidad para sus intereses personales.