解法1:效率低的解法

复杂度

速度十分缓慢,重复计算太多

代码

//未考虑溢出和取模
class Solution {public:int fib(int n) {if(n <= 0)return 0;if(n == 1)return 1;return fib(n - 1) + fib(n - 2);}
};

解法2:

复杂度:

时间复杂度O(n)

代码

class Solution {public:int fib(int n) {if(n <= 0)return 0;if(n == 1)return 1;//fib(n - 1)与fib(n - 2)long long fibNMinusOne = 1;long long fibNMinusTwo = 0;long long fibN = 0;for(int i = 2; i <= n; i++){//新的值都是在这里算出,只要这里取模就够了fibN = (fibNMinusOne + fibNMinusTwo) % 1000000007;fibNMinusTwo = fibNMinusOne ;fibNMinusOne = fibN ; }return fibN;}
};

剑指offer Leetcode 10 I .斐波那契数列相关推荐

  1. 剑指Offer - 面试题10- I. 斐波那契数列

    文章目录 1. 题目 2. DP解题 3. 面试题 08.01. 三步问题 4. LeetCode 509. 斐波那契数 1. 题目 写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 ...

  2. python剑指offer面试题_剑指offer面试题Q10 斐波那契数列 python解法

    Q10.斐波那契数列 题目描述 写一个函数,输入n,求斐波那契数列的第n项. 解题思路 思路一 递归 递归很简单但是并不能AC python实现代码 class Solution: def Fibon ...

  3. 剑指offer(7)斐波那契数列

    题目描述 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项. n<=39 题目分析 我们都知道斐波那契可以用递归,但是递归重复计算的部分太多了(虽然可以通过),但是这 ...

  4. 剑指offer面试题10- I. 斐波那契数列

    题目描述 写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项.斐波那契数列的定义如下: 思路 详见链接 代码 class Solution:def fib(self,n:int) ...

  5. 剑指offer面试题[9]-裴波那契数列

    题目描述 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项. n<=39 分析: 虽然在学递归函数时,会用斐波那契数列作为例子,但这并不能说明递归的解法最合适这个题目 ...

  6. 【剑指offer-Java版】09斐波那契数列

    斐波那契数:比较简单,但是重点是讲效率的求解出来 简单的使用两个临时变量大大减少了重复计算 对于非常大的数如果使用long 来表示,那么 第100项左右就会发生溢出 换了BigInteger,理论上是 ...

  7. 剑指offer——面试题10:斐波那契数列

    个人答案: 1 #include"iostream" 2 #include"stdio.h" 3 #include"string.h" 4 ...

  8. LeetCode——动态规划:斐波那契数列

    斐波那契数列 目录 爬楼梯 强盗抢劫 强盗在唤环形街区抢劫 信件错排 注:具体解析请点击链接进入LeetCode题解区. 1. 爬楼梯 https://leetcode-cn.com/problems ...

  9. LeetCode练习题:斐波那契数列

    斐波那契数,通常用 F(n) 表示,形成的序列称为 斐波那契数列 .该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和.也就是: F(0) = 0,F(1) = 1 F(n) = F(n ...

最新文章

  1. github上的图片当网络图片使用
  2. shell命令之---Linux文件权限
  3. 怎么共享电脑上的文件_电脑小技巧--远程访问共享文件夹
  4. 1、MySQL 8.0.20最新版本在Linux上安装
  5. Vue 路由知识三(过渡动画及路由钩子函数)
  6. PHP实现四种排序-插入排序
  7. 利用PCF8591进行AD转换
  8. python把print写入文件_Python中用print方法向文件中写入内容
  9. wpf TextBox点击去除下划线
  10. EXTJS4自学手册——EXT基本方法、属性(mixins多继承、statics、require)
  11. STM32f103 串口接收不定长数据
  12. Python设计模式--策略模式
  13. 实现 API 调用接口
  14. 使用USBWriter等工具做U盘启动盘后容量变小的解决办法
  15. java虚拟机开源_IBM J9 Java虚拟机正式开源
  16. ZipFile 解压多个.zip压缩文件
  17. PIESDKDoNet二次开发配置注意事项
  18. HTTP响应头使用X-Content-Options、X-XSS-Protection、X-Frame-Options
  19. 风控建模十二:数据淘金——如何从APP数据中挖掘出有效变量
  20. 转:海外购之Amazon亚马逊购物手把手教程

热门文章

  1. WPF特效-鱼游动动画
  2. 人工智能(4):模型评估
  3. 使用ffmeg提取视频关键帧
  4. 如何写一个安卓APP
  5. 服务器文件柜,公共文件柜使用方法
  6. MyBatis-Plus 使用详解
  7. coco数据集转voc格式(附pycocotools下载方法)
  8. ADC的几种常见类型
  9. java中包装类型,自动装箱与自动拆箱简述
  10. 2010软件收入百强企业出炉:华为居首