<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_三种方式实现斐波那契数列
优化斐波那契数列计算:递归与缓存策略
最新推荐文章于 2025-11-27 16:59:42 发布
这篇博客探讨了三种计算斐波那契数列的方法,包括基本的递归实现、使用缓存减少递归次数以及通过数组预计算。重点在于第二种方法,它利用缓存存储已计算过的斐波那契数,显著提高了效率。通过对比,展示了优化递归算法的重要性。
2051

被折叠的 条评论
为什么被折叠?



