算法-动态数组-62.不同路径

一、题目

二、思路解析

1.思路:

对于找到目的地它的来源主要来源于目的地的++上一格++ 和目的地的++左一格++

2.常用方法:

3.核心逻辑:

1.处理边界:

a.只向右移动,至始至终只有一条路径

java 复制代码
for(int i=0;i<m;i++){

    dp[i][0]=1;
}

b.只向下移动,至始至终只有一条路径

java 复制代码
for(int i=0;i<m;i++){

    dp[i][0]=1;
}

2.一般情况:对于找到目的地它的来源主要来源于目的地的++上一格++ 和目的地的++左一格++

java 复制代码
for(int i=1;i<m;i++){
    for(int j=1;i<n;j++){
        dp[i][j]=dp[i-1][j]+dp[i][j-1];
}
}

三、代码实现

java 复制代码
class Solution {
    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-1][j]+dp[i][j-1];
            }
        }
        return dp[m-1][n-1];
    }
}
相关推荐
Elsa️7466 分钟前
排序算法实现(基于408)
数据结构·算法·排序算法
xiaoye-duck11 分钟前
《算法题讲解指南:递归,搜索与回溯算法--二叉树中的深搜》--10.二叉搜索树中第k小的元素,11.二叉树的所有路径
c++·算法·深度优先·递归
m0_6727033113 分钟前
上机练习第48天
数据结构·c++·算法
客卿12322 分钟前
二叉树的层序遍历--思路===bfs的应用,以及java中队列的方法实操
java·算法·宽度优先
寻寻觅觅☆29 分钟前
东华OJ-进阶题-12-时间转换(C++)
开发语言·c++·算法
cyyt32 分钟前
深度学习周报(3.9~3.15)
算法
一直都在57235 分钟前
HashMap的扩容和迁移
算法·哈希算法
一叶落43841 分钟前
LeetCode 380. O(1) 时间插入、删除和获取随机元素【哈希表 + 动态数组 | C语言详解】
c语言·数据结构·c++·算法·leetcode·散列表
xiaoye-duck42 分钟前
《算法题讲解指南:递归,搜索与回溯算法--二叉树中的深搜》--8.二叉树剪枝,9.验证二叉搜索树
c++·算法·深度优先·递归
像素猎人2 小时前
数据结构之——图论中常用的方向数组是如何定义的
算法