原代码:

def fib(n):

  if n == 1:

    return 1

  elif n == 2:

    return 2

  else:

    return fib(n-1)+fib(n-2)

改进后:

def fib_efficient(n,d):

  if n in d:

    return d[n]

  else:

    ans = fib_efficient(n-1,d) + fib_efficient(n-2,d)

    d[n] = ans

    return ans

d = {1:1, 2:2}

print(fib_efficient(6,d))

转载于:https://www.cnblogs.com/Bella2017/p/7989565.html

python-使用字典使Fibonacci更有效率相关推荐

  1. 独家 | 使EfficientNet更有效率的三种方法(附链接)

    作者:Dominic Masters翻译:王可汗校对:欧阳锦本文约3300字,建议阅读5分钟本文为大家介绍了提升EffcientNet效率和性能的三个策略. 在实践中有更好性能的EfficientNe ...

  2. 如何使keystone更有效率

    2019独角兽企业重金招聘Python工程师标准>>> 写在前面-- 最近在测试OpenStack Havana RDO版本的时候,发现过一段时间后,整个平台会变动的越来越慢.刚刚开 ...

  3. 雄联盟工程师独家分享:如何使开发更有效率

    Hey,大家好!我是 Bill "LtRandolph" Clark,一名英雄联盟的游戏工程师.许多 Rioter 工程师关注大量的内容需要直接发送给玩家问题--这是两个我最近最喜 ...

  4. [蓝桥杯python] 无聊的逗:逗志芃在干了很多事情后终于闲下来了,然后就陷入了深深的无聊中。不过他想到了一个游戏来使他更无聊。他拿出n个木棍,然后选出其中一些粘成一根长的,然后再选一些粘成另一个长

    [蓝桥杯python] 无聊的逗 问题描述 1.资源限制 2.输入格式 3.输出格式 4.样式输入及输出 5.代码及解析 大功告成!编写不易,大家成功后点个关注or赞谢谢~~ 问题描述 逗志芃在干了很 ...

  5. python中字典按键或键值排序

    字典排序 在程序中使用字典进行数据信息统计时,由于字典是无序的所以打印字典时内容也是无序的.因此,为了使统计得到的结果更方便查看需要进行排序.Python中字典的排序分为按"键"排 ...

  6. python中字典按键或键值排序_[宜配屋]听图阁

    字典排序 在程序中使用字典进行数据信息统计时,由于字典是无序的所以打印字典时内容也是无序的.因此,为了使统计得到的结果更方便查看需要进行排序.Python中字典的排序分为按"键"排 ...

  7. 如何在Python中将字典键作为列表返回?

    本文翻译自:How to return dictionary keys as a list in Python? In Python 2.7 , I could get dictionary keys ...

  8. Apache Flink vs Apache Spark——感觉二者是互相抄袭啊 看谁的好就抄过来 Flink支持在runtime中的有环数据流,这样表示机器学习算法更有效而且更有效率...

    Apache Flink是什么 Flink是一款新的大数据处理引擎,目标是统一不同来源的数据处理.这个目标看起来和Spark和类似.没错,Flink也在尝试解决 Spark在解决的问题.这两套系统都在 ...

  9. python简单编程-编程中最简单的语言Python,这样学或许更容易

    最近微信小程序上面出了一个跳一跳的小游戏 大家有没有玩呀? 编程中最简单的语言Python,这样学或许更容易 分享之前我还是要推荐下我自己建的Python开发学习群:628979297,群里都是学Py ...

最新文章

  1. git - 搭建最简单的git server
  2. 找出数组中未出现的最小正整数
  3. Codeforces Round #348 (VK Cup 2016 Round 2, Div. 2 Edition) D. Little Artem and Dance 模拟
  4. 傅里叶变换 直观_A / B测试的直观模拟
  5. qt linux 添加库文件路径,Linux下Qt调用共享库文件.so
  6. mysql jsp分页技术_一个非常简单的分页技术MYSQL JSP 利用了mysql的LIMIT参数
  7. js 获取子节点个数
  8. java http服务 Tomcat_【求教】用JAVA写HTTP服务器代替TOMCAT 我代码哪错了。。
  9. 《操作系统真象还原》——0.17 先有的语言,还是先有的编译器,第1个编译器是怎么产生的...
  10. 【背包问题】基于matlab遗传算法求解背包问题【含Matlab源码 578期】
  11. ExtJs6第二弹-- 学会查看ExtJs api文档
  12. java osgi框架_4大 Java OSGi 框架比较 (Knopflerfish, Apache Felix, Equinox, Spring DM)
  13. 【转】欧盟物联网研究战略路线图(3)
  14. 相机ISO是什么 ISO是什么意思?
  15. 抖音占内存怎么办?不会玩抖音的16个小技巧教你怎么使用拍视频、怎么截取音乐片段
  16. 用c#二次开发的焊锡检测视觉系统
  17. 微信公众号红包营销系统开发
  18. python智能图片识别系统(图片切割、图片识别、区别标识)
  19. 淘宝/天猫盗图投诉之提交盗图申诉材料时,图片过大,如何缩小呢?
  20. swift3.0 GCD

热门文章

  1. python网页提交表单_使用Python中的POST请求通过网站表单上传基本文件
  2. map转成url拼接请求参数
  3. JasperReport报表导出PDF中文不显示的问题
  4. Mysql union和union all用法
  5. mybatis中批量插入的两种方式(高效插入)
  6. 搭建golang+vscode开发环境
  7. python如何使用web3py与以太坊投资智能合约交互
  8. Apple开源了用于ARM CPU的iOS内核
  9. 8天学通MongoDB——第四天 索引操作
  10. MEMCACHE分布式算法(PHP)