refactor(fibonacci): mudança de código

preferi mudar pois por recursividade demorava 18s para compilar todos os testes
This commit is contained in:
Nicolly Vieira Santos Costa 2022-10-28 15:49:24 -03:00
parent 08112d61a8
commit 384fb5acc5

View File

@ -1,4 +1,19 @@
export function fibonacci(value) {
// implementar logica aqui
return value <= 1 ? value : fibonacci(value - 1) + fibonacci(value - 2);
let arrayFibonacci = [];
let ultimo = 0;
let penultimo = 1;
let resultado = 1;
for (let i = 0; i < value; i++) {
arrayFibonacci.push(resultado);
resultado = ultimo + penultimo;
ultimo = penultimo;
penultimo = resultado;
}
return value == 0 ? 0 : arrayFibonacci[value - 1];
}