In [1]:
def fib(n):
if n<2:
return n
return fib(n-1)+fib(n-2)
In [2]:
%timeit fib(20)
In [2]:
%load_ext Cython
In [3]:
%%cython
def fib_cython(n):
if n<2:
return n
return fib_cython(n-1)+fib_cython(n-2)
In [4]:
%timeit fib_cython(20)
In [5]:
from functools import lru_cache as cache
@cache(maxsize=None)
def fib_cache(n):
if n<2:
return n
return fib_cache(n-1)+fib_cache(n-2)
In [6]:
%timeit fib_cache(20)
In [ ]:
Comments
Post a Comment