ich habe folgenden Code, der mir die Fibonacci-Folge rekurisv berechnet und schon berechnete Funktionen in eine Liste schreibt:
Code: Alles auswählen
memo = {0:0, 1:1}
def fibonacci_mem(n):
if n not in memo:
memo[n] = fibonacci_mem(n-1) + fibonacci_mem(n-2)
return memo[n]
Code: Alles auswählen
import numpy
memo2 = numpy.array([[0,0], [1,1]])
def fibonacci_num(n):
if n not in memo2:
memo2[n] = fibonacci_num(n-1) + fibonacci_num(n-2)
return memo2[n]
Code: Alles auswählen
[ced@Arch Python]$ ./info.py
Traceback (most recent call last):
File "./info.py", line 48, in <module>
print(fibonacci_num(int(n)))
File "./info.py", line 45, in fibonacci_num
memo2[n] = fibonacci_num(n-1) + fibonacci_num(n-2)
File "./info.py", line 45, in fibonacci_num
memo2[n] = fibonacci_num(n-1) + fibonacci_num(n-2)
File "./info.py", line 45, in fibonacci_num
memo2[n] = fibonacci_num(n-1) + fibonacci_num(n-2)
File "./info.py", line 45, in fibonacci_num
memo2[n] = fibonacci_num(n-1) + fibonacci_num(n-2)
IndexError: index 2 is out of bounds for axis 0 with size 2
[ced@Arch Python]$