劍指offer07 斐波那契數列

2022-07-09 10:12:15 字數 716 閱讀 8039

大家都知道斐波那契數列,現在要求輸入乙個整數n,請你輸出斐波那契數列的第n項(從0開始,第0項為0,第1項是1)。 n<=39 

輸入 4

返回值 3

陣列:這裡用遞迴會報錯「您的程式未能在規定時間內執行結束,請檢查是否迴圈有錯或演算法複雜度過大」

改用陣列可以巧妙解決

**

#報超時:程式未能在規定時間內執行結束

#-*- 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=solution()

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 ...