经典算法研究-斐波那契(fibonacci)数列

题目:1,1,2,3,5,8,13,21,34,...用递归写出算法,算出第30个数。

 

解答:

  斐波那契数列从第三项开始是前两个数的和。 

本题是经典的fibonacci数列:

        1、写出return Foo(i-1)+Foo(i-2);

2、写出if(i>0&&i<=2) return 1; 

代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace fibonacci
{
    
class Program
    {
        
static void Main(string[] args)
        {
            
int i = Foo(3);
            Console.WriteLine(i);
        }

        
private static int Foo(int num) {
            
if(num<=0){
                
return 0;
            }
            
else if(num<=2){
                
return 1;
            }
            
else{
                
return Foo(num - 1+ Foo(num-2);
            }
        }
    }

} 

posted @ 2011-09-01 15:51  苏先森1989  阅读(393)  评论(0编辑  收藏  举报