Вот код генератора фибоначчи:
ПРИМЕЧАНИЯ: fibonacciRecursive(n) для малих чисел для больших нужно использовать 2 или 3 функцию
class Fibonacci {
/**
* This is a `Fibonacci` function to low numbers.
* To using large number reccomend using `fibonacciIterative(n)` or `fibonacciDynamic(n)`
* @param {*} n Number to convert in fibonacci
* @returns fibonacci
*/
fibonacciRecursive(n) {
if (n <= 1) {
return n;
}
return this.fibonacciRecursive(n - 1) + this.fibonacciRecursive(n - 2);
}
/**
* This is a `Fibonacci` function to large numbers.
* @param {*} n Number to convert in fibonacci
* @returns fibonacci
*/
fibonacciIterative(n) {
let fibArr = [0, 1];
for (let i = 2; i <= n; i++) {
const nextNum = fibArr[i - 1] + fibArr[i - 2];
fibArr.push(nextNum);
}
return fibArr[n];
}
/**
* This is a `Fibonacci` function to super large numbers.
* @param {*} n Number to convert in fibonacci
* @returns fibonacci
*/
fibonacciDynamic(n) {
let fibArr = [0, 1];
for (let i = 2; i <= n; i++) {
fibArr[i] = fibArr[i - 1] + fibArr[i - 2];
}
return fibArr[n];
}
}
0 комментариев
Добавить комментарий