本文主要是介绍代码随想录算法训练营第四十二天(动态规划篇)|62. 不同路径,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
62. 不同路径
题目链接:62. 不同路径 - 力扣(LeetCode)
思路
- dp[i][j]: 从0到位置[i, j]共有dp[i][j]条路径。
- dp[i][j] = dp[i-1][j] + dp[i][j-1] 到位置[i,j],可以从它的上面或者左边来,所以路径和为这两个方向的路经总和。
- dp[i][0] = dp[j][0] = 1
- 遍历顺序:从前往后
代码实现
import numpy as np
class Solution(object):def uniquePaths(self, m, n):dp = np.zeros((m, n))# 设置第一列和第一行的基本情况for row in range(m):dp[row][0] = 1for col in range(n):dp[0][col] = 1for row in range(1, m):for col in range(1,n):dp[row][col] = dp[row][col-1]+ dp[row-1][col]return dp[m-1][n-1]
这篇关于代码随想录算法训练营第四十二天(动态规划篇)|62. 不同路径的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!