509. Fibonacci Number
遞迴
class Solution:
def fib(self, n: int) -> int:
if n == 0:
return 0
elif n == 1:
return 1
else:
return self.fib(n-1) + self.fib(n-2)自頂向下
class Solution:
def fib(self, n: int) -> int:
table = defaultdict(int)
table[1] = 1
def traverse(n):
# recursive
if n <= 1:
return table[n]
if n in table:
return table[n]
else:
table[n] = self.fib(n - 1) + self.fib(n - 2)
return table[n]
return traverse(n)自底向上
減少記憶體
Last updated