如果大家对这个生僻的术语不理解的话,那就先听小编给大家说个现实生活中的实际案例吧,虽然现在手机是相当的便捷,还可以付款,但是最初的时候,我们经常会使用硬币,其中,我们如果遇到手中有很多五毛或者1块钱硬币,要怎么凑出来5元钱呢?这么一个过程也可以称之为动态规划算法,下面就来看下详细内容吧。
从斐波那契数列看动态规划
斐波那契数列:Fn = Fn-1 + Fn-2 ( n = 1,2 fib(1) = fib(2) = 1)
练习:使用递归和非递归的方法来求解斐波那契数列的第 n 项
代码如下:
# _*_coding:utf-8_*_ def fibnacci(n): if n == 1 or n == 2: return 1 else: return fibnacci(n - 1) + fibnacci(n - 2) print(fibnacci(10)) # 55
如果看不懂上面模棱两可的介绍,还有下面直观的代码:
f(1) = 1 f(2) = 1 f(3) = f(1) + f(2) = 1+ 1 = 2 f(4) = f(3) + f(2) = 2 + 1 = 3 ... f(n) = f(n-1) + f(n-2)
这么总个过程就是动态规划算法啦,大家如果在碰到这样的流程,可以直接告诉大家你所使用的内容,相信一定让人感觉赞叹哦。
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试