Debería encontrar problemas del nivel correcto de dificultad e intentar resolverlos todos por su cuenta.
La segunda parte, resolverlo usted mismo, es bastante fácil: no tome una solución de ningún lado. Aprenderías mucho más si intentas resolverlo todo por ti mismo. Puede llevar mucho tiempo (varias horas o incluso un par de días). Está bien. Aprender a resolver problemas es un proceso largo.
El primero es más difícil. Es bastante difícil encontrar un problema que sea adecuado para usted. Si es demasiado simple, resolverlo es solo una pérdida de tiempo. Si es demasiado difícil, te quedarás atascado y no entenderás nada. Puede hacerlo de esta manera: encuentre una lista de problemas ordenados por dificultad en HackerRank (o en otro lugar). Repase rápidamente los más fáciles (si sabe cómo resolver un problema de inmediato, continúe). Una vez que encuentre un problema que no pueda resolver de inmediato, trabaje en ello. Es posible que no lo resuelva rápidamente. No importa. Si realmente estás atrapado por unos días, lee la solución. Asegúrate de entenderlo completamente. Memoriza las ideas centrales. Codifícalo tú mismo. Agarrar la implementación de alguien es absolutamente inútil.
- ¿De qué manera aprender sobre algoritmos mejora sus habilidades de programación?
- Cómo encontrar la subcadena común más larga de tres o más cadenas usando una matriz de sufijos
- ¿Para qué tipo de gráfico sería óptimo y correcto un algoritmo codicioso para colorear gráficos?
- ¿Qué debo saber sobre la programación de chat?
- En programación, ¿un generador de números aleatorios es realmente aleatorio? ¿O son los números aleatorios generados por un algoritmo oculto?
Leer otras soluciones es algo bueno después de resolverlo usted mismo. Puede aprender muchas técnicas útiles de esta manera.