@almata81

Как работает эта функция?

function fib(num) {
      if (num <= 2)
        return 1;
      return fib(num - 1) + fib(num - 2);
    }
  document.write(fib(6));
  • Вопрос задан
  • 141 просмотр
Решения вопроса 2
dmitry0141e
@dmitry0141e
Frontend Developer
Медленно :)
Сложность выходит O(n^2)
Считайте числа Фибоначчи так (сложность O(n) и без рекурсии):
const fib = (n) => {
    const buf = [0, 1];
    for (let i = 2; i <= n; i++) {
        buf[i % 2] += buf[(i + 1) % 2];
    }
    return buf[n % 2];
};
Ответ написан
samodum
@samodum
Какой вопрос - такой и ответ
Это вычисление чисел Фибоначчи из любой книги по программированию для начинающих для демонстрации как работает рекурсия.
В чём прикол? Про числа Фибоначчи все знают
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 нояб. 2024, в 08:04
1 руб./за проект
22 нояб. 2024, в 06:06
1500 руб./в час
22 нояб. 2024, в 06:04
1 руб./за проект