¿Cuál es la forma correcta de leer CLRS (Introducción a los algoritmos)?

Como ha mencionado que ya pasó la etapa de “Algoritmos desbloqueados”, supongo que conoce los conceptos básicos, la intuición detrás de ellos y ahora está listo para aprender detalles matemáticos en profundidad.

En caso de que tenga problemas con las matemáticas, puede consultar la parte VIII: Apéndice.

En la ” primera iteración “, puede omitir los siguientes temas. Aparte de eso, puede seguir los capítulos en orden. A veces puede saltear secciones “destacadas”.

  1. La teoría de Matroids – secciones 16.4 y 16.5. (Capítulo: Algoritmos codiciosos).
  2. Parte V: Estructuras de datos avanzadas. Aparte de la estructura de datos de Disjoint Set, no los veo aparecer en otras secciones. Así que guárdelo para las iteraciones posteriores.
  3. Análisis de unión por rango con compresión de trayectoria – sección 21.4. La estructura de datos de conjuntos disjuntos es simple de implementar, pero el análisis es difícil.
  4. Flujo máximo (solo si aún no está familiarizado con él) – capítulo 26. Es matemático pesado. Hasta que adquiera cierta intuición, puede ser un poco difícil seguir las pruebas.
  5. Algoritmos multiproceso – capítulo 27. Si no está acostumbrado, será muy difícil. Es importante y te expone a nuevos desafíos. Entonces léalo en la próxima iteración.
  6. Transformada rápida de Fourier: capítulo 30. La FFT implica mucha teoría relacionada con el análisis de Fourier (si realmente desea saber de qué se trata). Utiliza números complejos, enésimas raíces de la unidad. Guarda esto para otro día. No es broma.

Es posible que necesite años para estudiar el material. Resuelve tantos ejercicios como sea posible. (¡Dije “tantos como” porque puede que no sea posible resolverlos todos!). Léelo en iteraciones. (no de principio a fin de una vez). Si no lo ha hecho, implemente los conceptos que aprendió.

  1. visualizar estructuras de datos y algoritmos a través de la animación: en caso de que tenga problemas para comprender los conceptos, mire aquí la simulación interactiva
  2. Conferencias de video | Introducción a los algoritmos (SMA 5503) | Ingeniería Eléctrica e Informática | MIT OpenCourseWare: puede ver estas conferencias junto con el estudio del libro.

Buena suerte 🙂

Mi respuesta desde aquí: ¿Cómo debería uno leer Introducción a los algoritmos (CLRS) para aprovecharlo al máximo?

Antes de la lectura:

  • Asegúrate de ser bueno con:
  • Bucle anidado.
  • Recursividad
  • Seguimiento posterior (opcional)

Mientras leo:

  • Comience a leer cada capítulo cuidadosamente, lea los ejemplos y luego intente resolverlos usted mismo primero, si no puede ver el pseudocódigo y la explicación.
  • Escriba el código real usando cualquier lenguaje de programación que desee para el pseudocódigo que acaba de estudiar, depúrelo, estudíelo con precisión, entiéndalo, explíquelo a alguien (tal vez su hermano, amigo o incluso usted mismo) y guarde ese código, es posible que necesite eso mas tarde.
  • Resuelve los ejemplos del libro, piénsalo, intenta escribir un código con métodos recursivos e iterativos de programación dinámica.

Despues de leer:

Debes saber que, ahora tienes solo la semilla de los algoritmos, que no crecerán por sí mismos, para crecer, comenzar a resolver algunos problemas más difíciles en los algoritmos, esto es genial y está ordenado de lo más fácil a lo más difícil, resolver tanto como usted puede: Conjunto de problemas – Fuerzas de código

También verifique las otras respuestas también.

Supongo que estás preguntando sobre la mejor manera de aprender de CLRS …

1 – Considere dividir cada capítulo en párrafos.

2 – Lee cada párrafo.

3 – Intenta entenderlo palabra por palabra

4 – Intenta explicarlo usando nuestras palabras

5 – Si el párrafo tiene la demostración de un teorema, repita la demostración usando sus propias palabras. Además, trate de encontrar contraejemplos para el teorema, y ​​demuestre que el teorema no se cumple bajo tales ejemplos de coute.

6 – Pase al siguiente párrafo.

7 – Cuando se completa el capítulo, haz todos los ejercicios y pide ayuda si ves que no puedes resolver uno. Esos ejercicios a menudo se colocan allí para ayudarlo a desarrollar su capacidad para crear y resolver pruebas y teoremas.