力扣动态规划-15【算法学习day.109】

前言

###我做这类文章一个重要的目的还是给正在学习的大家提供方向(例如想要掌握基础用法,该刷哪些题?建议灵神的题单和代码随想录)和记录自己的学习过程,我的解析也不会做的非常详细,只会提供思路和一些关键点,力扣上的大佬们的题解质量是非常非常高滴!!!


习题

1.不同路径II

题目链接: 63. 不同路径 II - 力扣(LeetCode)

题面:

代码:

java 复制代码
class Solution {
    public int uniquePathsWithObstacles(int[][] obstacleGrid) {
        return dfs(new HashMap<Pair,Integer>(), obstacleGrid, 0, 0);
    }

    private int dfs(Map<Pair,Integer> cache, int[][] arr, int i, int j) {
      Pair p = new Pair(i,j);
      if(cache.containsKey(p))return cache.get(p);
      if(i>=arr.length||j>=arr[0].length||arr[i][j]==1)return 0;
      if(i==arr.length-1&&j==arr[0].length-1)return 1;
      int ref = dfs(cache,arr,i+1,j)+dfs(cache,arr,i,j+1);
      cache.put(p,ref);
      return ref;
    }
}

后言

上面是动态规划相关的习题,共勉

相关推荐
魔法阵维护师10 小时前
从零开发游戏需要学习的c#模块,第十四章(保存和加载)
学习·游戏·c#
德思特10 小时前
从 Dify 配置页理解 RAG 的重要参数
java·人工智能·llm·dify·rag
YOU OU11 小时前
Spring IoC&DI
java·数据库·spring
один but you11 小时前
从可变参数到 emplace:现代 C++ 性能优化的核心组合
java·开发语言
_李小白11 小时前
【android opencv学习笔记】Day 17: 目标追踪(MeanShift)
android·opencv·学习
一只机电自动化菜鸟11 小时前
一建机电备考笔记(40) 建筑机电施工—排水管道施工(含考频+题型)
经验分享·笔记·学习·职场和发展·课程设计
是码龙不是码农12 小时前
ThreadPoolExecutor 7 个核心参数详解
java·线程池·threadpool
2301_8187305612 小时前
numpy的学习(笔记)
学习·numpy
这是程序猿12 小时前
Spring Boot自动配置详解
java·大数据·前端
MY_TEUCK12 小时前
【Java 后端 | Nacos 注册中心】微服务治理原理、选型与注册发现实战
java·开发语言·微服务