94 votes

Un exemple simple pour quelqu'un qui veut comprendre la programmation dynamique

Je cherche un exemple facile à comprendre pour quelqu'un qui veut apprendre la programmation dynamique. Il y a de bonnes réponses ici sur ce qu'est la programmation dynamique. . La séquence de Fibonacci est un excellent exemple, mais elle est trop petite pour effleurer la surface. C'est un sujet intéressant à étudier, même si je n'ai pas encore suivi le cours sur les algorithmes, mais j'espère qu'il sera sur ma liste au printemps.

29voto

Nick Dandoulakis Points 26809

20voto

Olexiy Points 894

Tutoriel TopCoder pour DP est l'un des meilleurs.

7voto

Joey Adams Points 13049

L'idée derrière la programmation dynamique est que vous mettez en cache (mémorisation) les solutions aux sous-problèmes, mais je pense qu'il y a plus que cela.

Il existe de nombreux problèmes de Google Code Jam tels que les solutions nécessitent une programmation dynamique pour être efficaces. Exemples :

Bienvenue à Code Jam (modéré)

Tromper un arbre booléen (modéré)

PermRLE (dur)

Notez que chacun des concours pratiques de Code Jam comporte une section "Analyse du concours" pour le cas où vous auriez des difficultés à résoudre le problème.

4voto

David Winslow Points 5224

Le calcul des distances de Levenshtein est l'un des premiers problèmes que j'ai résolus à l'aide de la programmation dynamique. Je pense qu'il s'agit d'une étape suivante décente de la séquence de Fibonacci en termes de complexité.

http://en.wikipedia.org/wiki/Levenshtein_distance

0voto

Phil_Charly Points 31

Vous pouvez également essayer des cours en ligne gratuits sur les algorithmes, comme par exemple https://www.coursera.org/ et choisissez le tutoriel vidéo spécifique sur la programmation dynamique.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X