Cuando me encontré por primera vez con “Introducción a los algoritmos” a los 15, la mera idea de leer una ” Introducción ” de 1202 páginas, me pareció muy agotadora. En ese momento todo lo que me importaba era saber cómo codificar. Así que utilicé el libro para ver los fragmentos de código y mantuve la distancia de la parte teórica. Usar el libro como material de lectura para el curso “Algoritmos y estructuras de datos” en la universidad, y leerlo capítulo por capítulo me hizo cambiar de opinión acerca de cuán “agotador” era realmente el libro. Más que complicado, el libro tiene una de las explicaciones más claras con respecto a las partes teóricas y al material de codificación.
Dicho esto, si está realmente dedicado a aprender el diseño y análisis y profundizar su conocimiento de las estructuras de datos, no sugeriría cambiar a un libro más fácil, ya que considero que cada información sobre cada tema del libro es muy importante y simplificada. A la versión le faltaría información esencial.
Ahora, en cómo debes estudiarlo, o cómo lo estudiaría si fueras tú:
Tome un curso en línea sobre estructuras de algoritmos y datos, como:
- ¿Cómo puedo aprender Mecánica Cuántica por mi cuenta, pero cuyo resultado se comparará con los de alguien que ha estudiado y graduado? Por supuesto en ello?
- ¿Cómo es posible que un campo de entrenamiento solo tome 30 horas para captar material y un autoestudio combinado con asistencia en vivo de un instructor toma 40 horas?
- ¿Cómo estudio por mi cuenta para ser cuantitativo? ¿Cuáles son los métodos efectivos para estudiar, especialmente para alguien con poca experiencia en finanzas?
- ¿Cómo puedo auto estudiar álgebra abstracta?
- Cómo aprender a ser herrero.
MIT 6.006 Introducción a los algoritmos, otoño de 2011 e intenta ir al mismo tiempo a través de las conferencias y las partes respectivas del libro.
- Lea cada tema, haga los ejercicios respectivos sin optar directamente a Internet por ayuda (si entiende el tema, los ejercicios no son exactamente difíciles).
- Opte por el Internet para obtener ayuda una vez que esté atrapado por un tiempo relativamente largo . Cuanto más tiempo dedique a cada tema, ya sea tratando de resolver los problemas o simplemente reflexionando sobre por qué una fórmula de resumen es la forma en que se encuentra, más tiempo permanecerá ese tema en su memoria a largo plazo.
- Intente codificar los algoritmos clásicos, sin mirar las notas, después de aprender sobre el tema. Lo más probable es que olvide cómo se implementa en detalle algún procedimiento de hash, un par de días después, a menos que pase por la carga de implementarlo, probarlo y depurarlo.
- Por lo general, cada tema le dará sugerencias sobre desarrollos recientes o alternativos de un algoritmo, excepto la versión clásica. Es posible que estas versiones no estén en el libro, pero una vez que haya terminado con el tema respectivo, puede tomarse su tiempo y buscar en línea otras versiones del algoritmo, la mejora de complejidad, etc.
Como nota final, 4 meses, dependiendo de cuánto tiempo esté dispuesto a dedicar a los algoritmos de aprendizaje y las estructuras de datos, puede o no ser suficiente para leer el libro. Por lo tanto, si está revisando el libro por la mera alegría de aprender los algoritmos, puede tomarse su tiempo, pero si tiene algunas entrevistas de pasantías en el otoño, también puede leer libros como “Cracking the coding entrevista” paralelamente al Introducción a los algoritmos uno.
Personalmente, para obtener una pasantía en Google, realmente no necesitaba leer tales libros y tanto la “Introducción a los algoritmos” (aunque todavía era el momento en que solo había revisado los fragmentos de código) y las capacidades de implementación de codificación se lograron. Mírame las entrevistas, pero dependiendo de tus metas a corto / largo plazo, es posible que desees hacerlo de diferentes maneras.