当前位置: 代码迷 >> 综合 >> 动态规划求解机器人有多少种可能的路径
  详细解决方案

动态规划求解机器人有多少种可能的路径

热度:40   发布时间:2024-02-19 09:47:26.0
public class HelloWorld {public int unquePaths(int m,int n) {int [][]=new int[m][n]int i ,j;for(i=0;i<m;i++){for(j=0;j<n;j++){if(i==0||j==0){f[i][j]=1;}else{f[i][j]=f[i-1][j]+f[i][j-1];}}return f[m-1][n-1];
}

1 确定状态即最后一步为 f[i-1][j-1]

   化成子问题 f[i-2][j-1], f[i-1][j-2]

2 转移方程

  f[i][j]=f[i-1][j]+f[i][j-1]

3 初始条件和边界情况

初始条件 f[0][0]=1 

边界情况:i=0或j=0,则前一步只能有一个方向过来 f[i][j]=1

4 计算顺序

计算第0行,计算第1行,计算第m-1行  答案是f[m-1][n-1]

  相关解决方案