|
從斐波那契數(shù)列說起
我想幾乎每一個程序員對斐波那契(Fibonacci)數(shù)列都不會陌生,在很多教科書或文章中涉及到遞歸或計(jì)算復(fù)雜性的地方都會將計(jì)算斐波那契數(shù)列的程序作為經(jīng)典示例。如果現(xiàn)在讓你以最快的速度用C#寫出一個計(jì)算斐波那契數(shù)列第n個數(shù)的函數(shù)(不考慮參數(shù)小于1或結(jié)果溢出等異常情況),我不知你的程序是否會和下列代碼類似:
public static ulong Fib(ulong n)
{
return (n == 1 || n == 2) ? 1 : Fib(n - 1) + Fib(n - 2);
}
it知識庫:程序設(shè)計(jì)中的計(jì)算復(fù)用(Computational Reuse),轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。