В Python есть встроенный декоратор для автоматической мемоизации любой функции. В fib4() декоратор @functools.lru_cache() использован точно с тем же кодом, который мы применили в fib2(). Каждый раз, когда fib4() выполняется для нового аргумента, декоратор выполняет кэширование возвращаемого значения. При последующих вызовах fib4() для того же аргумента сохраненное значение извлекается из кэша и возвращается
Классические задачи Computer Science на языке Python
·
Дэвид Копец