Te diré algunos puntos.
Primero aumenta tus habilidades de pensamiento. (No tome esto, de manera incorrecta, mi intención es decir, resolver un problema relacionado con la recursión y después de resolver el problema a través de la recursión, intente resolverlo de forma iterativa (si es posible, pero intente), ¿cómo ayudará? lo entenderás) y si ya has practicado, salta al segundo paso.
Luego comience a resolver la Pregunta clásica de programación dinámica.
- ¿Qué tan complejo debe ser un algoritmo criptográfico para estar sujeto a las regulaciones de exportación de criptografía?
- ¿Es posible elegir aleatoriamente un número de (0 a infinito), de modo que cada número tenga la misma probabilidad de ser elegido?
- ¿Qué podemos aprender del algoritmo de 'optimización de colonias de hormigas' para mejorar nuestras habilidades de resolución de problemas?
- Cómo implementar el algoritmo de similitud de oraciones
- ¿Dónde debo comenzar si quiero aprender estructuras de datos y algoritmos?
Mochila.
LCS.
Matrix Chain Multipication.
Cambio de moneda.
LIS
Editar distancia.
Partición equilibrada.
Estrategia óptima para un juego.
Ahora comience a resolver el problema de DP en varios jueces en línea (Spoj, Codeforces, hackerrank, codechef, etc.)
Si se queda atascado en algún lugar y no encuentra otra solución que leer la solución de otros usuarios e intentar comprenderlos. También aumentará tus habilidades de pensamiento, lo sabrás (ohh, sí, también se puede resolver de esta manera).
Por último, pero no menos importante, DP es un ejemplo perfecto de “La práctica hace al hombre perfecto”. Cuanto más practicas, más aprendes.
Ahora, todavía está pensando que por qué me concentro más en la recursividad, algunas veces pensar que una solución recursiva es más fácil que iterativa (ese es mi punto de vista, puede ser para usted fácil de resolver a través de la iteración).
Alguna referencia para la práctica: –
Programación dinámica: de principiante a avanzado
Algoritmos – GeeksforGeeks
Clasificador de problemas para el juez en línea Esfera (SPOJ)
Problemas de programación para dp
700 problemas para entender que completa la programación algorítmica.
Tutorial para programación dinámica
Programación dinámica – I – Arjit Srivastava