大家都知道斐波那契數列,現在要求輸入乙個整數n,請你輸出斐波那契數列的第n項(從0開始,第0項為0,第1項是1)。 n<=39
輸入 4
返回值 3
陣列:這裡用遞迴會報錯「您的程式未能在規定時間內執行結束,請檢查是否迴圈有錯或演算法複雜度過大」
改用陣列可以巧妙解決
**
#報超時:程式未能在規定時間內執行結束a=solution()#-*- coding:utf-8 -*-
class
solution:
deffibonacci(self, n):
#write code here
if n==0:
return 0
if n==1:
return 1
return fibonacci(n-1)+fibonacci(n-2) //
#在pythontutor測試可執行
a.fibonacci(n=4)
#用陣列實現#-*- coding:utf-8 -*-
class
solution:
deffibonacci(self, n):
#write code here
res=[0,1]
while n>=len(res):
return res[n]
劍指offer 07 斐波那契數列
題目描述 大家都知道斐波那契數列,現在要求輸入乙個整數n,請你輸出斐波那契數列的第n項 從0開始,第0項為0,第1項是1 n 39 時間限制 c c 3秒,其他語言6秒 空間限制 c c 64m,其他語言128m 題目示例 輸入 4 返回值 3解法分析在學遞迴的時候,斐波那契數列可謂最佳例子,除去n...
劍指07 斐波那契數列
大家都知道斐波那契 fibonacci 數列,現在要求輸入乙個整數n,請你輸出斐波那契數列的第n項 從0開始,第0項為0,第1項是1 要求使用遞迴和非遞迴兩種方法 public class solution 上述 效率低,這樣是拿不到offer的 o 上述遞迴 之所以慢,是因為會大量重複計算相同的數...
劍指offer 斐波那契數列
題目1描述 寫乙個函式,輸入n,求斐波那契數列的第n項。斐波那契數列的定義如下 f n 0 n 0 f n 1 n 1 f n f n 1 f n 2 n 1 分析描述 在大多數的c語言教科書中,一般會用遞迴求斐波那契數列。如下 long long fibonacci unsigned int n ...