不同路径 II

题目链接

不同路径 II

题目描述



注意点

  • obstacleGrid[i][j] 为 0 或 1
  • 1 <= obstacleGrid.length, obstacleGrid[i].length<= 100

解答思路

  • 可以使用动态规划解决本题,到达任意一个位置[i][j]可能是由[i - 1][j]向下移动也可能是由[i][j - 1]向右移动,所以从起点开始,由其上方和左方的点的路径数量推出到达当前点的路径数量,并保存到达当前点的路径数量(方便继续推出其他点的路径数量),直到到达终点为止

代码

class Solution {
    public int uniquePathsWithObstacles(int[][] obstacleGrid) {
        // 起点障碍物
        if (obstacleGrid[0][0] == 1) {
            return 0;
        }
        int row = obstacleGrid.length;
        int col = obstacleGrid[0].length;
        int[][] dp = new int[row][col];
        dp[0][0] = 1;
        for (int i = 0; i < row; i++) {
            for (int j = 0; j < col; j++) {
                // 障碍物无法到达
                if (obstacleGrid[i][j] == 1) {
                    continue;
                }
                if (i > 0) {
                    dp[i][j] += dp[i - 1][j];
                }
                if (j > 0) {
                    dp[i][j] += dp[i][j - 1];
                }
            }
        }
        return dp[row - 1][col - 1];
    }
}

关键点

  • 动态规划的思想
  • 注意边界问题
  • 注意起点就是障碍物的特殊情况

相关推荐

  1. leetcode 63.不同路径II

    2024-04-07 14:48:02       14 阅读
  2. 【Leetcode】63- 不同路径II

    2024-04-07 14:48:02       11 阅读
  3. LeetCode第63题 - 不同路径 II

    2024-04-07 14:48:02       45 阅读
  4. 动态规划 Leetcode 63 不同路径II

    2024-04-07 14:48:02       22 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-07 14:48:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-07 14:48:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-07 14:48:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-07 14:48:02       20 阅读

热门阅读

  1. SPI123456

    2024-04-07 14:48:02       15 阅读
  2. ffmpeg 视频格式转换

    2024-04-07 14:48:02       17 阅读
  3. redis的Set详细介绍

    2024-04-07 14:48:02       12 阅读
  4. redis修改协议改了,有哪些替代品?

    2024-04-07 14:48:02       15 阅读
  5. 如何让你的回答有逻辑?-开放式问题应答技巧

    2024-04-07 14:48:02       20 阅读
  6. C++类和对象(上)

    2024-04-07 14:48:02       16 阅读
  7. Vscode已经安装imutils但是依旧报错

    2024-04-07 14:48:02       23 阅读
  8. 设计模式:生活中的观察者模式

    2024-04-07 14:48:02       18 阅读
  9. Spring相关实战

    2024-04-07 14:48:02       13 阅读
  10. Flutter Engine引擎概念

    2024-04-07 14:48:02       21 阅读
  11. HOW - 前端国际化之多语言通用方案

    2024-04-07 14:48:02       16 阅读
  12. 「 网络安全常用术语解读 」同源策略SOP详解

    2024-04-07 14:48:02       16 阅读