【博客搬家旧文】剑指offer [ java ] 面试题10 斐波那契数列
契波那契数列最常见的解法,递归如下:
public class Solution {public int Fibonacci(int n) {if(n == 0)return 0;else if(n == 1)return 1;return Fibonacci(n-1)+Fibonacci(n-2);}}
常规解法,剑指书上的推荐解法。为什么要用这种解法呢,自然就是因为递归时有可能很多计算都是重复的,递归调用的层数太多时,还有可能会出现调用栈溢出的问题。代码如下:
public class Solution {public int Fibonacci(int n) {int[] result = {0,1};if(n<2)return result[n];int FibMinusOne = 1;int FibMinusTwo = 0;int FibN = 0;for(int i=2; i<=n ; ++i){FibN = FibMinusOne + FibMinusTwo;FibMinusTwo = FibMinusOne;FibMinusOne = FibN;}return FibN;} }
转载于:https://www.cnblogs.com/cy708/p/10004460.html
【博客搬家旧文】剑指offer [ java ] 面试题10 斐波那契数列相关推荐
- 剑指offer:面试题10- I. 斐波那契数列
写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项.斐波那契数列的定义如下: F(0) = 0, F(1) = 1 F(N) = F(N - 1) + F(N - 2), 其中 ...
- 《剑指offer》c++版本 10. 斐波那契数列
如题: 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0). 这道题基本上学过算法的人都直到,斐波那契数列即,即1,1,2,3,5....... 用数 ...
- 牛客网(剑指offer) 第七题 斐波那契数列
//问题描述: 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项. n<=39 function Fibonacci($n){//显然递归超时了 2333333333 ...
- 剑指offer_第7题_斐波那契数列
题目描述 现在要求输入一个整数n 输出斐波那契数列的第n项(从0开始,第0项为0). n<=39 理解 斐波那契数列 因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子 ...
- 打印水仙花数oracle,javaScript实现回文数、水仙花数判断和输出斐波那契数列
javaScript实现回文数.水仙花数判断和输出斐波那契数列 发布时间:2020-07-22 01:15:37 来源:51CTO 阅读:422 作者:Cynthia_xie // 判断一个数是不是回 ...
- 【博客搬家旧文】leetcode 771. Jewels and Stones
今天开通了博客园 ,之前的博客就不用了.之后再陆陆续续把之前的博文重新放到这里来.有标题这个tag的都是搬运的旧博客的文章.希望在这里是个新的开始,嘻嘻. import java.util.Scann ...
- [剑指offer][JAVA]面试题第[32-3]题[从上到下打印二叉树 ][BFS]
[问题描述][中等] 请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第三行再按照从左到右的顺序打印,其他行以此类推. 例如: 给定二叉树: [3 ...
- [剑指offer][JAVA]面试题第[32-2]题[从上到下打印二叉树][BFS]
[问题描述][简单] 从上到下按层打印二叉树,同一层的节点按从左到右的顺序打印,每一层打印到一行.例如: 给定二叉树: [3,9,20,null,null,15,7],3/ \9 20/ \15 7 ...
- [剑指offer][JAVA]面试题第[32-1]题[从上到下打印二叉树][BFS]
[问题描述][中等] 从上到下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印. 例如: 给定二叉树: [3,9,20,null,null,15,7],3/ \9 20/ \15 7 返回: ...
最新文章
- 2010年7月blog汇总:OpenTest、MetaModelEngine和敏捷个人
- android 弹出弹框2秒消失_基于HTML5 Canvas 实现弹出框
- echarts的入门案例
- python的字符串包括哪些_python公开课|Python字符串包含什么,我们应该怎么用
- 机器学习基础-特征工程简析
- 图像特征提取(二)——SIFT算法详解
- USB接口一般的排列方式是:红白绿黑从左到右。颜色含义如下:
- 国内景色最震撼的9座雪山
- iOS --- 使用Mixpanel来统计和分析移动APP的用户数据
- 九宫格按键输入(机考Python)
- 会议oa之排座和送审
- SDUST 第二次实验
- 首批 RISC-V 手机要来了,你准备好了吗?
- index、noindex、follow、nofollow的使用说明
- Android QPython3 制作简易GUI长文本框界面
- 《Cut The Rope》 HTML 5版背后的开发故事
- Mac百度网盘下载慢怎么办?Mac百度网盘下载满速教程
- python大数据运维工程师待遇_大数据运维工程师的工作职责
- 关于物联网卡 你了解多少呢?
- 【网络编程实践】2.1.4 tcp 自连接
热门文章
- python读取字典元素笔记_Python中列表、字典、元组数据结构的简单学习笔记
- 利用任务调度特性检测Android模拟器
- JVM内存区域划分及其管理机制
- 梳理各算法基础应用及场景
- 微信验证服务器是怎么回事,微信服务器认证为什么需要这么多参数?
- php人民币转换,PHP字符串转换RMB形式数字
- php manager 怎么用,Windows 2008 R2下如何利用PHPManager对PHP进行配置
- core控制器属性注入的用处_了解ASP.NET Core 依赖注入,看这篇就够了
- c语言结构体与共同体课件,《结构体与共同体》PPT课件.ppt
- php 文件上传页面模板,PHP文件上传类实例详解