关闭。这个问题需要更多 focused 。它目前不接受答案。












想改善这个问题吗?更新问题,使其仅关注 editing this post 的一个问题。

1年前关闭。



Improve this question




什么是 动态规划

它与递归、内存等有什么不同?

我已经阅读了上面的 wikipedia article,但我还是不太明白。

最佳答案

动态规划是指您使用过去的知识来更轻松地解决 future 的问题。

一个很好的例子是求解 n=1,000,002 的斐波那契数列。

这将是一个很长的过程,但如果我给你 n=1,000,000 和 n=1,000,001 的结果呢?突然间,问题变得更易于管理了。

动态规划在字符串问题中被大量使用,例如字符串编辑问题。您解决问题的一个或多个子集,然后使用该信息解决更困难的原始问题。

使用动态规划,您通常将结果存储在某种表格中。当您需要问题的答案时,您可以引用该表,看看您是否已经知道它是什么。如果没有,您可以使用表格中的数据为自己提供通往答案的垫脚石。

Cormen 算法这本书有一个关于动态规划的重要章节。而且它在 Google 图书上是免费的!检查出来 here.

关于algorithm - 什么是动态规划?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1065433/

10-12 16:33