【LeetCode】64. 最小路径和 python实现

在这里插入图片描述

解题思路

动态规划

python 代码

class Solution:
    def minPathSum(self, grid: List[List[int]]) -> int:
        n = len(grid)
        m = len(grid[0])
        dp = []
        for i in range(n):
            dp.append([0]*m)
        dp[0][0] = grid[0][0]
        for i in range(1,m):
            dp[0][i] = dp[0][i-1]+grid[0][i]
        for j in range(1,n):
            dp[j][0] = dp[j-1][0]+grid[j][0]
        for i in range(1, n):
            for j in range(1, m):
                dp[i][j] = min(dp[i-1][j],dp[i][j-1])+grid[i][j]
        return dp[-1][-1]

s = Solution()
result = s.minPathSum([[1,3,1],[1,5,1],[4,2,1]])
print(result)
发布了222 篇原创文章 · 获赞 7 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_42247922/article/details/104625670