2
A
回答
3
这两个概念是完全不同的:
的函数称为递归如果它调用自身。
动态规划是一种解决问题的技术。它涉及首先解决一个较小的子问题,然后将解决方案扩展到整体问题的解决方案。
通常情况下,动态规划算法可以递归表示。
1
“Devide而治之”的理念算法考虑动态和递归既例如,在列表/数组排序,你在2份和呼叫排序函数中的每个部分再次分裂的项目...等
1
递归代码,是调用自身的代码,动态代码是编程并自行调用的代码。
我需要一些上下文来试图找出谁写的课程是谁试图说。动态代码可以是递归的,递归代码可以是动态的,所以我发现你的问题的意图令人困惑。
2
递归解决方案以自顶向下的方式解决问题,而动态解决方案以自下而上的方式解决问题,同时利用优先解决子问题的最优解决方案。并不总是你可以执行动态规划,你需要确保子问题的最优解决方案也是全球问题的最佳解决方案。
一个典型的例子是第n个斐波那契数的计算:
-Recursive
Fib(n)
if (n <= 2) return 1
return Fib(n-1) + Fib(n-2)
- 动态
Fib(n)
previous = 1
next = 1
temp = 0
for i = 2 to n do
temp = previous
previous = next
next = temp + next
return next
这是一个伪代码,第一个重复呼叫,第二个是基于以前的情况
相关问题
- 1. 递归过程要将呼叫在MIPS
- 2. 动态规划:递归关系
- 3. 动态规划递归或迭代
- 4. 递归呼叫被阻止
- 5. 动态规划递归给出了错误的结果
- 6. 动态规划
- 7. 动态规划
- 8. Adobe动态标签管理 - 动态直接呼叫规则
- 9. C++异步拉姆达“递归”呼叫
- 10. 与参数简码的动态呼叫
- 11. 与会话呼叫动态web服务
- 12. 动态规划中的递推公式
- 13. 与呼叫状态混淆
- 14. 动态规划:任务规划变化
- 15. 动态规划Altogorithm
- 16. 动态Android呼叫转移
- 17. 问题与Ruby的递归拉姆达呼叫
- 18. 规划程序
- 19. Api呼叫请求每小时呼叫限制1个呼叫
- 20. 多次自动呼叫终端程序
- 21. 呼叫追踪Windows驱动程序
- 22. 动态规划:真或假
- 23. 动态规划方法
- 24. 动态规划问题
- 25. 动态规划:概念
- 26. 动态规划练习
- 27. 棒切割动态规划
- 28. Qt的:狭槽不要求手动功能呼叫
- 29. 手动呼叫
- 30. 使用意图呼叫主要活动
谢谢大家!这个线程真的帮助我赢得这个概念! :D如果没有你的解释,我不知道这两者之间有很大的区别 – JavaJew22 2013-03-19 18:30:50