Это код для создания Фибоначчи. Я не могу понять, что делают i ++ и y ++ и как все это приводит к последовательности. :(

function fibonacciGenerator(n) {
  var fib = [0, 1];
  var i = 0;
  var y = 1;

  if (n === 1) {
    fib.pop();
  } else {
    for (var i = 0; fib.length < n; i++) {
      fib.push(fib[i] + fib[y]);
      y++;
    }
  }
  return fib;
}
0
user12573363 21 Дек 2019 в 02:42

1 ответ

Лучший ответ

i всегда соответствует fib.length - 2, а y всегда - fib.length - 1. Каждая итерация увеличивает размер массива, поэтому эти два счетчика должны увеличиваться, чтобы всегда указывать на последние два слоты .

0
Mori Bellamy 20 Дек 2019 в 23:45