feat(fibonacci): condições e loop utilizados na resolução, funcional em todos os testes. Comentario com primeira logica, mas estava mal otimizada.

This commit is contained in:
Ramon Dias Ferreira 2022-10-29 18:09:07 -03:00
parent d3a4147db9
commit aaed0ee98d

View File

@ -1,4 +1,25 @@
export function fibonacci(value) {
// implementar logica aqui
if(value < 1) return 0
if(value <=2) return 1
let fibMin2 = 0
let fibMin1 = 1
let fibValue = value
for(let i = 2; i <= value; i++) {
fibValue = fibMin1 + fibMin2
fibMin2 = fibMin1
fibMin1 = fibValue
}
return fibValue
// Forma inicial pensada, mas demorava muito tempo para passar nos testes.
// if(value === 0) {
// return 0
// }
// else if (value <= 2) {
// return 1
// }
// return fibonacci(value - 1) + fibonacci(value - 2);
}