动态规划 ≈ 分治法 + memo

def memo(func):
cache = {}
def wrap(*args):
if args not in cache:
cache[args] = func(*args)
return cache[args]
return wrap @memo # 注释掉这个装饰器
def fib(i):
if i < 2:
return 1
return fib(i-1) + fib(i-2) print(fib(55))
cache = {}
def memo(func): def wrap(*args):
if args not in cache:
cache[args] = func(*args)
return cache[args]
return wrap @memo
def fib(i):
if i < 2:
return 1
return fib(i-1) + fib(i-2) print(fib(55))
print(cache)

另外,关于*args当参数传函数为unpack

def foo(*args):
print(args) args = (1,2,34,) foo(*args)
foo(args)

最新文章

  1. 初识SpringMvc
  2. Linux yum配置文件详解
  3. 查看centos的版本
  4. Jquery+Ajax+Json的使用(微信答题实例)
  5. CS程序,服务器端弹出MessageBox.Show()之类的UI操作???禁止
  6. I.MX6 Android USB Touch eGTouchA.ini文件存放
  7. 网站开发常用jQuery插件总结(九)侧边栏插件pageslide
  8. Vitaliy and Pie(模拟)
  9. .net 控件开发第二天 怎么将 第一天写的代码 用到 .net中来
  10. PHP中的面向对象思想
  11. 【转】Mysql索引设计原则
  12. 解决matplotlib库在PyCharm和命令行都无法正常显示问题
  13. docker:Dockerfile构建LNMP平台
  14. HTTP请求响应报文 - 相关状态码 - GET_POST请求方法
  15. 服务器--apache启用多个端口的方法
  16. Docker学习4-Containers - 容器
  17. 设置matplotlib画图支持中文显示
  18. SQL SERVER发布与订阅
  19. scala中“_”的用法
  20. [User Defaults] Failed to read values in CFPrefsPlistSource (iOS 10)

热门文章

  1. echart如何去掉X 、Y轴的网格线
  2. SpringMvc执行流程及底层代码流程
  3. IDEA常用操作链接
  4. 我竟然把today = new Date();写在了全局变量里面
  5. YARN High Availablity
  6. 4.用springboot写的第一个程序--helloworld
  7. Python的DataFrame遍历_转CSDN_J小白Y
  8. 【PAT甲级】1114 Family Property (25分)(并查集)
  9. AJAX-状态属性
  10. (转)多进程 &amp; 多线程的区别与适用场景