64. 最小路径和

64. 最小路径和
-< 动态规划,dp[i][j]=dp[i-1][j]+dp[i][j-1],但是其中边界等于grid[i][0]和grid[0][j]
代码:
class Solution:
    def minPathSum(self, grid: List[List[int]]) -> int:
        m = len(grid)
        n = len(grid[0])
        dp = [[0]*n for _ in range(m)]
        dp[0][0] = grid[0][0]
        for i in range(1,m):
            dp[i][0] = grid[i][0]+dp[i-1][0] #需要添加自身的值
        for i in range(1,n):
            dp[0][i] = grid[0][i]+dp[0][i-1]

        for i in range(1,m):
            for j in range(1,n):
                dp[i][j] = min(grid[i][j]+dp[i-1][j],grid[i][j]+dp[i][j-1])
        return dp[-1][-1]

 

 
posted @ 2022-07-31 15:32  是冰美式诶  阅读(23)  评论(0)    收藏  举报