<script>
//方式一:
// function fbi(n){
// console.count("计数")
// return n < 2 ? 1 : fbi(n-1) + fbi(n-2)
// }
//方式二,做缓存,减少递归次数
let cache = {}
function fbi(n){
console.count("计数")
if(n in cache){
return cache[n]
}else {
let result = n < 2 ? 1: fbi(n-1) + fbi(n-2)
cache[n] = result
return result;
}
}
//方式三
// function fbi(n){
// let arr = [1,1]
// while(arr.length<=n){
// arr.push(arr[arr.length-1]+arr[arr.length-2])
// }
// console.log(arr)
// return arr[arr.length-1]
// }
// 1,1,2,3,5,8,13
console.log(fbi(5))
算法学习记录004_三种方式实现斐波那契数列
最新推荐文章于 2024-04-25 17:04:59 发布