暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

算法之最下路径和

小璇坨坨 2019-07-10
144
'''
https://leetcode-cn.com/problems/minimum-path-sum/submissions/
给定一个包含非负整数的 m x n 网格,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。
说明:每次只能向下或者向右移动一步。
示例:
输入:
[
[1,3,1],
[1,5,1],
[4,2,1]
]
输出: 7
解释: 因为路径 1→3→1→1→1 的总和最小。
'''
    dp公式:
    dp[i][j]=min(dp[i][j-1],dp[i-1][j])+grid[i][j]
    class Solution(object):
    def minPathSum(self, grid):
            row,col = len(grid),len(grid[0])  # 主要不要混淆
            dp=[[0 for _ range(col)] for _ in range(row)]
            for i in range(row):
               for j in range(col):
                  if i == 0:
                if j== 0:
                         dp[i][j]=grid[i][l]
                      else:
                         dp[i][j] = dp[i][j-1] + grid[i][j]
                   elif j == 0:
                      dp[i][j]=dp[i-1][j]+grid[i][j]
                   else:
                      dp[i][j]=min(dp[i-1][j],dp[i][j-1])+grid[i][j]
            return dp[-1][-1]


    文章转载自小璇坨坨,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

    评论