溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

C#算法大全-2-Algorithm Gossip: 費(fèi)式數(shù)列

發(fā)布時(shí)間:2020-09-01 01:57:53 來源:網(wǎng)絡(luò) 閱讀:810 作者:虛實(shí)之安 欄目:編程語言

AlgorithmGossip: 費(fèi)式數(shù)列

說明

Fibonacci1200年代的歐洲數(shù)學(xué)家,在他的著作中曾經(jīng)提到:「若有一只免子每個(gè)月生一只小免子,一個(gè)月后小免子也開始生產(chǎn)。起初只有一只免子,一個(gè)月后就有兩只免子,二個(gè)月后有三只免子,三個(gè)月后有五只免子(小免子投入生產(chǎn))......。

如果不太理解這個(gè)例子的話,舉個(gè)圖就知道了,注意新生的小免子需一個(gè)月成長(zhǎng)期才會(huì)投入生產(chǎn),類似的道理也可以用于植物的生長(zhǎng),這就是Fibonacci數(shù)列,一般習(xí)慣稱之為費(fèi)氏數(shù)列,例如以下: 11 、2、3、5、8、13、21、34、55、89......

解法

依說明,我們可以將費(fèi)氏數(shù)列定義為以下:

fn = fn-1 + fn-2  if n > 1

fn = n if n= 0, 1


namespace 費(fèi)式數(shù)列
{
    class Program
    {
        static void Fib(int n)
        {
            int [] a=new int [n+1];
            a[0] = 0;
            a[1] = 1;
            for (int i=2; i < n + 1; i++)
            {
                a[i] = a[i - 1] + a[i - 2];//第N個(gè)月的兔子數(shù)是N-1和N-2個(gè)月的兔子數(shù)的總和。因?yàn)镹-1月的新生小兔子的數(shù)量是,N-2兔子的數(shù)量。
            }
            Console.WriteLine("第{0}個(gè)月的兔子數(shù)量為{1}",n,a[n]);
        }
        static void Main(string[] args)
        {
            Console.WriteLine("親,幾個(gè)月了!");
            int a = int.Parse(Console.ReadLine());
            Fib(a);
            Console.Read();
        }
    }
}


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI