Ya hay muchas respuestas que satisfacen la pregunta, sin embargo, supongo que agregaría un par de monedas de mi lado.
- Estudie el código , tal vez el pseudo o código fuente, simplemente repáselo, está bien incluso si no lo obtiene. Nadie lo conseguirá la primera vez, confía en mí, nunca lo tendré la primera vez también. Así que tome una taza de café y revísela.
- Ahora que ha leído el código, intente analizar lo que está sucediendo detrás de él, tome su lápiz y papel, rastree el código, simplemente hágalo, no importa cuán grande sea el código, al menos obtendrá el trabajo detrás del algoritmo .
- Ahora que sabe lo que hace el algoritmo, continúe e impleméntelo , ahora aquí es donde muchos codificadores aficionados fallan, piensan que está bien no implementarlo dado el hecho de que entendieron el algoritmo. UN GRAN ERROR. No obtendrá el algoritmo a menos y hasta que lo implemente en el lenguaje con el que se sienta cómodo.
- Resuelva problemas competitivos en sitios como Codechef, TopCoder, SPOJ buscando los algoritmos relacionados, una vez que esté atascado vaya y lea los editoriales, haga preguntas si no comprende la implementación. Ve a stackoverflow también.
- Nunca te rindas, incluso si no lo entiendes, solo sigue practicando, estoy seguro de que eventualmente lo entenderás.
Cuando comencé, me asusté al ver todos esos gráficos, árboles … algos, pero una vez que comencé a comprenderlos e implementarlos por mi cuenta, no encuentro mucha dificultad. Estoy seguro de que tú también terminarás así.
Buena suerte y feliz codificación !!!
- ¿Cómo funciona el algoritmo OKCupid?
- ¿Por qué la búsqueda es más rápida para un árbol binario que una lista vinculada?
- ¿Cuál es el intercambio de espacio temporal en las estructuras de datos?
- ¿Es posible desarrollar un algoritmo que pueda hacer predicciones perfectas en el mercado de valores?
- ¿Existe alguna noción del algoritmo más eficiente posible para alguna tarea?