Средний
Задача по JavaScript — Числа Фибоначчи с мемомизацией
Рекурсия
Мемоизация
Описание
Код
Необходимо написать функцию fibonacciMemo(num),которая принимает n и возвращает f(n).
В этой задаче необходимо оптимизировать алгоритм вычисления чисел Фибоначчи, который страдает от неэффективной рекурсии.
Стандартная реализация вызывает функцию дважды, из-за чего повторно рассчитываются уже известные значения, что значительно увеличивает время выполнения для больших n (выше 50).
Задача заключается в создании мемоизированной версии рекурсивной функции Фибоначчи.
При вычисления числа Фибоначчи сначала необходимо проверять кэш: если число там есть — возвращайте его, если нет — вычислите, сохраните в кэш и затем верните.
Важно, чтобы кэш мемоизации оставался приватным для функции.
fibonacciMemo(0) // 0
fibonacciMemo(50) // 12586269025
fibonacciMemo(70) // 190392490709135
fibonacciMemo(90) // 2880067194370816000Описание
Console
Perfomance
Очистить
Время выполнения: - мс