Лекции / 3. Рекурсия. Мемоизация.ipynb - Colab (1)
.pdf
Использование декоратора functools.lru_cache
Для использования этого декоратора нужно импортировать модуль functools :
from functools import lru_cache
У данного декоратора существует два параметра:
maxsize — сколько результатов вызова хранить. Для достижения максимальной производительности рекомендуется использовать числа, равные степени двойки (128, 256, 512 и т.д.).
typed — если True , то параметры разных типов хранятся отдельно. Т.е. integer и float считаются разными ключами даже при равных значениях.
Внимание! Параметры функции должны быть хешируемого типа (числа, строки, кортежи и т.д.). Списки, словари и другие изменяемые типы использовать нельзя.
Пример применения
Пример применения стандартного декоратора для реализации мемоизации. Теперь мемоизации применена к функции проверки числа на простоту.
