Bueno, hay muchas maneras. El objetivo es comprender su concepto, es decir, cómo funcionan y por qué y dónde aplicarlos.
- Hay libros que pueden hacerle comprender los conceptos clave de manera elaborada. Uno de esos libros es Introducción a los algoritmos (también conocido como CLRS).
- Hay ciertos cursos en línea como Introducción a los algoritmos del MIT.
- También hay ciertos tutoriales relacionados con Algoritmos y DS en sitios web de programación competitivos como topcoder, hackerEarth, etc. Estos no son largos y van al grano.
Pero, lo más importante es que debe intentar implementar el algoritmo o la estructura de datos después de comprender su concepto. La mejor manera de pulir las habilidades de implementación es hacer problemas de programación competitivos.
Además, no debe estar limitado a un solo recurso, ya que cada recurso tiene su propia perspectiva. Por lo tanto, puede haber algunos conceptos que pueden no estar en un recurso pero se encuentran en otro.
- ¿Por qué las funciones de límite superior e inferior en C ++ STL dan diferentes índices para el mismo número?
- Cómo superar y comprender el algoritmo / código de otras personas
- ¿Qué es un problema algorítmico que es fácil de resolver en Haskell pero difícil de resolver en Python?
- ¿Hay alguna razón para no usar el generador de números aleatorios estándar de C ++?
- ¿Cómo funciona la recursividad en el árbol de búsqueda binaria en orden? ¿Cómo se pueden explicar las llamadas recursivas, sin resumirlas como llamadas de pila?
Feliz codificación !!