已经讨论过每个递归算法都可以转换为迭代算法。
但......可以将每个迭代算法转换为动态编程吗?
我开始学习动态编程......我遇到了很多问题..即使我能找到递归解决方案,而且我很专业地将它们转化为迭代算法,我仍然不能将这些迭代算法转化为动态编程......当然,确实知道每个迭代算法都可以转换为动态算法非常有用......
答案 0 :(得分:4)
我希望通过动态编程你的意思是the same thing as Wikipedia does - 即将问题分解为更小的子问题的算法,并使用memoization来避免必须两次解决相同的问题。
动态编程无法有效地应用于所有迭代算法。要使动态编程有用,问题需要两个属性: