尼采般地抒情

尼采般地抒情

尼采般地抒情

音乐盒

站点信息

文章总数目: 315
已运行时间: 1554

动态规划

  • 状态转移方程:动态方程抽离问题的共同解决方程

在本问题中,走到某个格子,他的上一步一定是从左边格子走进来或是从上边走下来的,所以利用这一点可以写一个函数表达式f[i][j] = f[i-1][j] + f[i][j-1]

  • 初始状态:相当于对于上述动态方程的特殊情况的枚举

上边界和左边界的赋值就是该问题的初始状态,这两种情况都只能是一种方式走进来,所以都赋值为1

f[0][j] = 1

f[i][0] = 1


var uniquePaths = function(m, n) {
  let arr = new Array(m).fill(0).map(() => new Array(n).fill(0))
  for (let i = 0; i<m; i++) arr[i][0] = 1
  for (let j = 0; j<n; i++) arr[0][j] = 1
  for (let i = 1; i<m; i++) {
    for (let j = 1; j<n; j++) {
      arr[i][j] = arr[i-1][j] + arr[i][j-1]
    }
  }
  return arr[m-1][n-1]
};

评论区