第29247题 单选
关于Python中递归与记忆化实现的优化,下列说法正确的是?

以下是普通递归实现的斐波那契数列函数:

def fib(n):
    if n <= 1:
        return n
    return fib(n-1) + fib(n-2)

该函数存在大量重复计算的问题,若使用记忆化进行优化,下列说法正确的是?

A

记忆化优化无法改变该函数的时间复杂度,依然为O(2^n)

B

可以通过from functools import lru_cache并在函数上添加@lru_cache(maxsize=None)装饰器实现记忆化优化

C

记忆化只能通过手动定义字典存储已计算的结果实现,无法使用Python内置工具

D

使用记忆化后,该函数的空间复杂度会变为O(1),因为不需要再维护递归栈和缓存

程序运行统计
暂无判题统计
提交0次 正确率0.00%
答案解析