题解 | #删除链表的节点#

跳台阶

http://www.nowcoder.com/practice/8c82a5b80378478f9484d87d1c5f12a4

参考C++,引入一个map,避免重复计算 将已经计算的值保存到map中,计算的时候直接查询map, 有就直接返回值,没有就存入map,并返回值

import java.util.*;
public class Solution {
    //记忆搜索
HashMap<Integer,Integer> map=new HashMap<>();//保存已经被计算的值
    
    public int jumpFloor(int target) {
        if(target<=2){
            return target;
        }
    //获取已保存的值
       if(map.containsKey(target)){
            return map.get(target);
       }
    //存入未有的值,并返回
        map.put(target,jumpFloor(target-1)+jumpFloor(target-2));
        return map.get(target);
    }
}
全部评论

相关推荐

04-10 11:56
如皋中学 Java
高斯林的信徒:双c9能简历挂的?
点赞 评论 收藏
分享
04-11 23:51
门头沟学院 Java
坚定的芭乐反对画饼_许愿Offer版:人人都能过要面试干嘛,发个美团问卷填一下,明天来上班不就好了
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务