剑指Offer_入门_JZZ_斐波那契数列

题目描述

大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0,第1项是1)。n≤39。

示例1

输入4,返回值3

基本定义

斐波那契数列指的是这样一个数列 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368

斐波那契数列

特别指出:第0项是0,第1项是第一个1。
这个数列从第3项开始,每一项都等于前两项之和。

解题思路一

public class Solution {public int Fibonacci(int n){int temp = 0;int temp1 = 0;int temp2 = 1;int temp3 = 0;for(int i = 1;i< n;i++){temp3 = temp1 + temp2;temp1 = temp2;temp2 = temp3;}if(n > 1 && n <=39){temp = temp3;}if(n == 1){temp = 1;}return temp;}
}

解题思路二

public class Solution {public int Fibonacci(int n){if(n == 0) return 0;if(n == 1) return 1;if(n < 0 && n>39) return n;return Fibonacci(n-1) + Fibonacci(n-2);}
}

测试

解题思路一:运行时间10ms,内训9636kb
解题思路二:运行时间875ms,内存9696kb

说明

解题思路二用的是递归,显然从外表看是比较完美的,但是这样的内存损耗大,所需时间运行时间多,而解题思路用的是根据斐波那契数列的定义,使用最基本的循环,这样简便。

剑指Offer_入门_JZZ_斐波那契数列相关推荐

  1. 剑指offer Q10 -I 斐波那契数列

    思路 本题看起来是简单题,但是实际上对性能和结果都有要求 直接使用递归写法性能上是不能通过的.只能使用迭代写法,通过两个变量re1和re2来保存前一步和前前一步的结果,最后返回re2即可.但是注意,本 ...

  2. 蓝桥杯入门练习题斐波那契数列

    蓝桥杯入门练习题 斐波那契数列 #include <stdio.h> #include <stdlib.h>int main() {long long i, j, f1 = 1 ...

  3. python编写递归函数和非递归函数、输出斐波那契数列_python 入门之斐波那契数列递归表达式算法和非递归算法...

    题目: 斐波那契数列是一组有规律的数列:1,1,2,3,5,8,13,--..,那么我们怎么用python 来完成此算法,并求出第200位的值是多少 1.python 递归表达式实现: def fib ...

  4. 算法设计与分析(Java实现)—— 动态规划(入门)斐波那契数列

    斐波那契数列 递归 记忆化递归 动态规划 public class dp {//# 递归的的斐波那契数列解决方法 时间复杂度O(2^n)public long fibonacci(int n) thr ...

  5. 用python函数写斐波那契数列非递归,python 入门之斐波那契数列递归表达式算法和非递归算法...

    题目: 斐波那契数列是一组有规律的数列:1,1,2,3,5,8,13,........,那么我们怎么用python 来完成此算法,并求出第200位的值是多少 1.python 递归表达式实现: def ...

  6. 斐波那契尾递归函数java_斐波那契数列 递归 尾递归 递推 C++实现

    ==================================声明================================== 本文原创,转载请注明作者和出处,并保证文章的完整性(包括本 ...

  7. 递归入门 斐波那契数列

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! < ...

  8. 斐波那契数列在计算机的应用,斐波那契(Fibonacci)数列的几种计算机解法

    题目:斐波那契数列,又称黄金分割数列(F(n+1)/F(n)的极限是1:1.618,即黄金分割率),指的是这样一个数列:0.1.1.2.3.5.8.13.21.34.--.在数学上,斐波纳契数列以如下 ...

  9. 剑指offer_第7题_斐波那契数列

    题目描述 现在要求输入一个整数n 输出斐波那契数列的第n项(从0开始,第0项为0). n<=39 理解 斐波那契数列 因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子 ...

最新文章

  1. 【转】C++面试题(四)——智能指针的原理和实现
  2. html5语音对讲,c#语音对讲demo
  3. python sklearn.preprocessing.standardScaler 的transform和fit_transform方法
  4. React开发(275):dva debugger对应的值
  5. 让服务器突破性能极限 阿里云神龙论文入选计算机顶会ASPLOS
  6. windbg-!address、!vadump、!vprot(读取内存状态)
  7. [NOIP2012提高组] CODEVS 1200 同余方程(扩展欧几里德算法)
  8. 卸载mysql5.5.27(傻瓜式卸载)
  9. Java笔记——关于设置自定义字体、全局字体方面和getFont()的使用
  10. 2015中国(深圳)互联网金融创新峰会暨第二届云海汇梦想年会圆满成功
  11. border缩写属性
  12. php期末作业总结,期末考试总结与反思(精选6篇)
  13. 如何区分光纤跳线的颜色?
  14. vscode vue代码格式化无效详细解决方案
  15. java中国象棋兵吃棋规则_国际象棋规则兵的吃法
  16. 传统6大茶类都有哪些
  17. 【图形】输出一行星号
  18. Oracle as 10g安裝問題
  19. hdu1234 开门人与关门人
  20. android网络下载图片并且显示在图库中

热门文章

  1. (译)ABP之Entities
  2. 【汉诺塔】汉诺塔问题
  3. 代码补全快餐教程(1) - 30行代码见证奇迹
  4. 关于一个CUE文件及多个分轨APE合并成CUE及APE文件的办法
  5. 一个研发管理使命、愿景、价值观的案例
  6. 5-旋转的小菊-旋转画布和定时器
  7. 汽车Vin码识别/手机端扫描识别汽车车架号SDK
  8. 如何做好网络推广?软文文案在做网络推广上的策略分享
  9. Beta Distribution Guided Aspect-aware Graph for Aspect Category Sentiment Analysis论文阅读笔记(EMNLP2021)
  10. Qt QTreeWidget/QTreeView去焦点(虚线框)