斐波那契數列

##生成一個斐波那契數列,通過迭代進行求解,把一個n值的求解,根據一定的關係,層層迭代,最終到已知的常量定值,
##這種代碼很好理解,也看似很簡單,但是十分消耗時間,不推薦使用。
def Fibon_seq(n):
    if type(n)!=int:
        raise ValueError("Error n!")
    if n<0:
        raise ValueError("n must larger than 0!")    
    if n==1 or n==2:
        return(1)
    else:
        return(Fibon_seq(n-1)+Fibon_seq(n-2))
Fibon_seq(5)
##通過對代碼優化,大大提高了運算速度,因此,今後編寫代碼時不僅要能實現功能,還要實現高效率
def Fibon_seq_new(n):
    a,b=1,1
    for i in range(n-1):
        a,b=b,a+b
    return a
Fibon_seq_new(50)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章