斐波那契的一些解法,学习用,有啥侵权啥的比如可以说下看看

java版本

1.一个应该是直接调用java的一个东西吧,去解决这个问题,不过可能比较慢

n为0返回0和n=1的时候返回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.这个为啥这么写,我可能还不是很懂,但是大概类似于背了下,首先如果小于2的话,是要判断的,要不然传了这个值没返回,然后

后面的判断是,要有两个值,一个存0,一个存1,然后用一个循环把second求出来,至于为什么是n-1,我不太清楚,比如n是2的话,只需要循环一次再把

second传回去,大概是自己算吧,需要多少个循环

 

class Solution {
    public int fib(int n) {
       
 
        if (n<2) return n;
        int first = 0;
        int second =1;
        for (int i = 0; i < n-1; i++) {
            int sum =first +second;
            first = second;
            second =sum;
           
        }
        return second;
    }
}
posted @ 2025-05-06 15:24  cc1112  阅读(9)  评论(0)    收藏  举报