def fib(n):
if n == 1:
return 0
if n == 2:
return 1
return fib(n-2) + fib(n-1)
def memo(f):
cache = {}
def memoized(n):
if n not in cache:
cache[n] = f(n)
return cache[n]
return memoized
fib1 = memo(fib)
Run Code Online (Sandbox Code Playgroud)
这段代码在我的笔记本电脑上运行得很慢,但如果我将名称fib1更改为fib,那么一切正常......有谁知道原因?谢谢!
| 归档时间: |
|
| 查看次数: |
2396 次 |
| 最近记录: |