力扣-动态规划-62 不同路径

思路

  1. dp数组定义:到达i,j的路径为dp[i][j] 条
  2. 递推公式:dp[i][j] = dp[i][j - 1] + dp[i - 1][j]
  3. dp数组初始化:dp[1][1] = 1
  4. 遍历顺序:先m后n,从小到大,由于要知道i,j的左边和上边
  5. 时间复杂度:

代码

cpp 复制代码
class Solution {
public:
    int uniquePaths(int m, int n) {
        vector<vector<int>> dp(m + 1, vector<int>(n + 1, 0));
        dp[1][1] = 1;
        for (int i = 1; i <= m; i++) {
            for (int j = 1; j <= n; j++) {
                if (i == 1 && j == 1) {
                    continue;
                } else {
                    dp[i][j] = dp[i][j - 1] + dp[i - 1][j];
                }
            }
        }

        return dp[m][n];
    }
};
相关推荐
52Hz1181 天前
力扣230.二叉搜索树中第k小的元素、199.二叉树的右视图、114.二叉树展开为链表
python·算法·leetcode
苦藤新鸡1 天前
56.组合总数
数据结构·算法·leetcode
菜鸟233号1 天前
力扣647 回文子串 java实现
java·数据结构·leetcode·动态规划
LiLiYuan.1 天前
【Cursor 中找不到LeetCode 插件解决办法】
算法·leetcode·职场和发展
Charlie_lll1 天前
力扣解题-[3379]转换数组
数据结构·后端·算法·leetcode
captain3761 天前
Java队列(Queue)
算法·链表
TracyCoder1231 天前
LeetCode Hot100(23/100)——142. 环形链表 II
算法·leetcode·链表
jigsaw_zyx1 天前
提示词工程
人工智能·算法
A尘埃1 天前
银行个人贷款违约风险预测(逻辑回归)
算法·机器学习·逻辑回归