zoukankan      html  css  js  c++  java
  • 斐波那契数列

    java代码:

    import java.util.Scanner;
    
    /**
     * 斐波那契数列(Fibonacci sequence),又称黄金分割数列、
     * 因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,
     * 指的是这样一个数列:1、1、2、3、5、8、13、21、34、……
     * 在数学上,斐波纳契数列以如下被以递归的方法定义:F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)(n>2,n∈N*)
     */
    public class Fibonacci {
    
        /**
         * 递归实现方式
         */
        public static int fibonacci(int n) {
            if (n <= 2) {
                return 1;
            } else {
                return fibonacci(n - 1) + fibonacci(n - 2);
            }
        }
    
        /**
         * 递推实现方式
         */
        public static int fibonacciNormal(int n) {
            if (n <= 2) {
                return 1;
            }
            int n1 = 1, n2 = 1, sn = 0;
            for (int i = 0; i < n - 2; i++) {
                sn = n1 + n2;
                n1 = n2;
                n2 = sn;
            }
            return sn;
        }
    
        /**
         * 测试
         */
        @SuppressWarnings("resource")
        public static void main(String[] args) {
            System.out.println("请输入斐波那契数列参数n:");
            Scanner scanner = new Scanner(System.in);
            int n = scanner.nextInt();
    
            // System.out.println(fibonacci(n));
            // System.out.println(fibonacciNormal(n));
    
            for (int i = 1; i <= n; i++) {
                System.out.print(fibonacci(i) + " ");
            }
        }
    }
  • 相关阅读:
    龙芯地址空间详解
    JS匿名函数 Amy
    JS正则表达式 Amy
    JS对象 Amy
    Java 位图法排序
    Java Final
    JAVA 数组
    Java shuffle 算法
    jQuery object and DOM element
    Javascript 声明时用“var”跟不用"var"的区别
  • 原文地址:https://www.cnblogs.com/zj0208/p/6136739.html
Copyright © 2011-2022 走看看