斐波那契数列

来源:互联网 发布:开源cms系统免费 编辑:程序博客网 时间:2024/06/05 14:08

 面试题的总结

          最近在回顾下在面试中出现的问题.

         1, 斐波那契数列,大多数是问求第几位的数十什么。

                       斐波那契的规律:1,1,2,3,5,8,13,21,34,55,89,144....

                      主要规律:当前项=前一项+前二项

                      解题方式:递归

                      代码如下:

              public int Fibonacci(int num)                   {                      int result=0;                       if(num<=2)                       {                              return 1;                       }                       result=(Fibonacci(num-1)+Fibonacci(num-2));              }    

                      递归理解:

                      当num=5的时候

                          Fibonacci(5)

                                   第一步---Fibonacci(5)=Fibonacci(5-1)+Fibonacci(5-2);

                                         第二步--Fibonacci(5)拆分为两个Fibonacci方法

                                              第三部:Fibonacci(5-1)=Fibonacci(4)= Fibonacci(4-1)  +    Fibonacci(4-2);

                                                                                                              =Fibonacci(3)+Fibonacci(2) +Fibonacci(2)

                                                                                                              =Fibonacci(3-1)+Fibonacci(2) +     Fibonacci(2)     

                                                                                                              = Fibonacci(2)+Fibonacci(2)+Fibonacci(2)

                                                                                                              =1+1+1=3;

                                                                                          Fibonacci(4)=3;

                                                           :Fibonacci(5-2)=Fibonacci(3)=Fibonacci(3-1)+Fibonacci(3-2);

                                                                                                               = FIbonacci(2)+Fibonacci(1);

                                                                                                               =1+1=2

                                                                                      Fibonacci(3)=2 

                                                所以通过不断的自身调用寻找跟的值得出Fibonacci(5) 的值就是5;


                                                          

                                              
                  

                     

原创粉丝点击