动态规划<二>路径问题

目录

路径问题

1.第一题

2.第二题

3.第三题

 4.第四题

 5.第五题

6.第六题


路径问题

1.第一题

LeetCode<62> 不同路径

画图分析

动态规划解题的几步

1.确定状态表示

根据经验+题目要求

dp[i][j]表示走到[i,j]位置时的不同路径数

2.状态转移方程

以当前[i,j]位置状态的最近一步来划分子问题,将每个子问题用状态表示,即表示为dp[x][y]

3.初始化

4.填表顺序

从上往下填写每一行,每一行从左往右

5.返回值   dp[m][n](最右下位置)

具体代码

int uniquePaths(int m, int n) 
    {
        //1.创建dp表
        //2.初始化
        //3.填表
        //4.返回值

        vector<vector<int>>dp(m+1,vector<int>(n+1));
        dp[0][1]=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][n];
    }
2.第二题

OJ传送门:LeetCode<63> 不同路径II

画图分析:

 使用动态规划来解决

1.确定状态表示

和上题一样dp[i][j]表示走到[i,j]位置时的不同路径数

2.状态转移方程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值