LeetCode:62.不同路径

跟着carl学算法,本系列博客仅做个人记录,建议大家都去看carl本人的博客,写的真的很好的!
代码随想录
LeetCode:62.不同路径

一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 "Start" )。

机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 "Finish" )。

问总共有多少条不同的路径?

示例 1:

输入:m = 3, n = 7

输出:28

示例 2:

输入:m = 3, n = 2

输出:3

解释:

从左上角开始,总共有 3 条路径可以到达右下角。

  1. 向右 -> 向下 -> 向下
  2. 向下 -> 向下 -> 向右
  3. 向下 -> 向右 -> 向下
    示例 3:
    输入:m = 7, n = 3
    输出:28
    示例 4:
    输入:m = 3, n = 3
    输出:6
  • 还是类似爬楼梯问题,只是这里变为二维的了,最后的位置依赖[m - 1][n][m][n - 1]的位置了
java 复制代码
	public int uniquePaths(int m, int n) {
        int[][] dp = new int[m][n];
        for (int i = 0; i < m; i++) {
            dp[i][0] = 1;
        }
        for (int i = 0; i < n; i++) {
            dp[0][i] = 1;
        }
        for (int i = 1; i < m; i++) {
            for (int j = 1; j < n; j++) {
                dp[i][j] = dp[i][j - 1] + dp[i - 1][j];
            }
        }
        return dp[m - 1][n - 1];
    }
相关推荐
西岭千秋雪_11 小时前
Kafka客户端整合
java·spring boot·分布式·kafka·linq
努力学习的小廉11 小时前
我爱学算法之—— 字符串
c++·算法
leonardee11 小时前
Golang笔记——Interface类型
java·后端
我是好小孩11 小时前
【Android】RecyclerView的高度问题、VH复用概念、多子项的实现;
android·java·网络
张彦峰ZYF11 小时前
高并发优惠权益聚合接口的优雅实现(含超时控制 + 来源标识 + Fallback 降级)
java·后端·面试
4Forsee12 小时前
【Android】模板化解决复杂场景的滑动冲突问题
android·java·rpc
若水不如远方12 小时前
深入 Dubbo 服务暴露机制:从注解到网络的完整链路剖析
java·dubbo
tanxinji12 小时前
Netty编写Echo服务器
java·netty
yuuki23323312 小时前
【数据结构】常见时间复杂度以及空间复杂度
c语言·数据结构·后端·算法