Средний

Задача по JavaScript — Числа Фибоначчи с мемомизацией

Рекурсия
Мемоизация
Описание
Код

Необходимо написать функцию fibonacciMemo(num),которая принимает n и возвращает f(n).

В этой задаче необходимо оптимизировать алгоритм вычисления чисел Фибоначчи, который страдает от неэффективной рекурсии.
Стандартная реализация вызывает функцию дважды, из-за чего повторно рассчитываются уже известные значения, что значительно увеличивает время выполнения для больших n (выше 50).

Задача заключается в создании мемоизированной версии рекурсивной функции Фибоначчи.
При вычисления числа Фибоначчи сначала необходимо проверять кэш: если число там есть — возвращайте его, если нет — вычислите, сохраните в кэш и затем верните.

Важно, чтобы кэш мемоизации оставался приватным для функции.

fibonacciMemo(0) // 0
fibonacciMemo(50) // 12586269025
fibonacciMemo(70) // 190392490709135
fibonacciMemo(90) // 2880067194370816000

Описание
Console
Perfomance
Очистить
Время выполнения: - мс
Запустить