1.题目

2.解法
class Solution {
public int uniquePaths(int m, int n) {
int[][] dp = new int[m][n];
dp[0][0] = 1;
for(int i = 0; i < m; i++) {
dp[i][0] = 1;
}
for(int j = 0; j < n; j++) {
dp[0][j] = 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];
}
}
时间复杂度O(mn),空间复杂度O(mn)
本文介绍了一种计算从网格左上角到右下角唯一路径数量的算法,使用动态规划方法,时间复杂度为O(mn),空间复杂度也为O(mn)。通过初始化边界条件并迭代填充动态规划矩阵,最终返回右下角单元格的路径数量。
349

被折叠的 条评论
为什么被折叠?



