No debes memorizarlos, debes entenderlos . Debe saber por qué el algoritmo hace lo que hace.
Debería comprender las ideas fundamentales y la intuición detrás del algoritmo: cómo alguien podría tener la idea en primer lugar. Es decir, ¿por qué pensamos en el problema de esta manera? Luego, debe comprender cómo las ideas se hacen precisas y se desarrollan en el algoritmo, y ser capaz de explicar por qué se eligieron ciertas opciones de implementación sobre otras. * Si conoce estas cosas, no necesitará memorizar el algoritmo. Recordará las ideas necesarias para construirlo desde cero, y tendrá a su disposición la capacidad de moldearlo y modificarlo para abordar las variaciones del problema.
Ver relacionado: ¿Cómo puedo mejorar mi habilidad para resolver problemas algorítmicos?
- ¿Cuál es la mejor estructura y algoritmo de datos para encontrar un valor máximo dentro de un subconjunto de una población de datos que satisfaga alguna condición de rango?
- ¿Cuáles son los algoritmos básicos de aprendizaje automático que todo principiante debe saber antes de comenzar el aprendizaje automático?
- ¿Por qué utilizar el árbol de búsqueda ternario en lugar de reemplazar cada nodo de Trie a un árbol BST?
- ¿Qué tipo de algoritmos se utilizan en DSP (plataforma del lado de la demanda)?
- ¿Cuáles son las mejores estructuras de datos para un índice espacial utilizado para averiguar en qué región de un espacio delimitado cae un nuevo punto dado?
* Ejemplo: ¿Por qué las implementaciones modernas del algoritmo de Dijkstra usan un montón? ¿Por qué no usar una matriz sin clasificar?