刷题笔记(13)
Posted HardyDragon_CC
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了刷题笔记(13)相关的知识,希望对你有一定的参考价值。
直接使用递归会超时,因为包含了太多的重复计算,为了减少重复计算,使用哈希表存储之前计算的结果,再次遇到直接查表就可以了。需要注意的是判断map中是否存在某一键返回布尔的方法是 containsKey()
;
class Solution {
Map<Integer,Integer> map = new HashMap<>();
public int fib(int n) {
if(n<2){
return n;
}
int res;
if(map.containsKey(n)){
return map.get(n);
}else{
res = (fib(n-1) + fib(n-2)) % 1000000007;
map.put(n,res);
}
return res;
}
}
以上是关于刷题笔记(13)的主要内容,如果未能解决你的问题,请参考以下文章