博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
斐波那契数列
阅读量:5280 次
发布时间:2019-06-14

本文共 762 字,大约阅读时间需要 2 分钟。

递归算法:方法自身再次调用自身的过程。

如:1 、1 、2、3、5、8、13、21  34   55….

从第二数开始,每位上的值是前两个数的和。求第10个数是多少

  1. 递归算法:自己调用自己
  2. 迭代算法:通过中间变量。不断交换获得值。

 

public class Test{

   public static void main(String[] args){

      System.out.println(diGui(10));

      System.out.println(dieDai(5));

   }

 

   public static int diGui(int i){

      if(i <= 2){

        return 1;

      }

      //当 i 大于 2 的时候

      return diGui(i - 2) + digui(i - 1);

   }

 

   public static int dieDai(int i){

      int x1 = 1;//倒数第二位

      int x2 = 1;//倒数第一位

      int temp = 0;//存储结果

      if(i < = 2){

        return 1;

      }  

      // i > 2 的情况

      for(int j = 2;j < i; j++){

        temp = x1 + x2;

        x1 = x2;

        x2 = temp;

      }

      return temp;

   }

  

}

 

转载于:https://www.cnblogs.com/changyinlu/p/4693507.html

你可能感兴趣的文章
String = ""和String = null的区别
查看>>
C#测试题若干,都是基础阿
查看>>
NetWork——关于TCP协议的三次握手和四次挥手
查看>>
如果TCP采用两次握手
查看>>
An easy problem
查看>>
MauiMETA工具的使用(一)
查看>>
LeetCode: Anagrams 解题报告
查看>>
用cookie登录慕课网络教学中心刷评论
查看>>
牛腩新闻视频 回车键的疑惑
查看>>
poj 2965 The Pilots Brothers' refrigerator
查看>>
Mybatis分页插件
查看>>
初学者编程实战指南 (2)- 避免逻辑的重复
查看>>
java技术基础
查看>>
QA系统Match-LSTM代码研读
查看>>
typedef与define宏定义用于声明新的类型之间的区别
查看>>
idea前后端分离搭建 JavaWeb项目
查看>>
python学习笔记 day44 mysql练习题(三)
查看>>
c# 使用ICSharpCode.SharpZipLib.dll实现文件压缩并返回
查看>>
【Laravel】 常用的artisan命令
查看>>
Qt 中获取本机IP地址
查看>>