码迷,mamicode.com
首页 > 其他好文 > 详细

64. Minimum Path Sum

时间:2018-08-30 16:50:57      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:not   note   type   tom   inf   +=   个数   range   image   

Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which minimizes the sum of all numbers along its path.

Note: You can only move either down or right at any point in time.

 

技术分享图片

 

class Solution(object):
    def minPathSum(self, grid):
        """
        :type grid: List[List[int]]
        :rtype: int
        """
        # 行数
        m = len(grid)
        # 列数
        n = len(grid[0])
        for i in range(1,n):
            grid[0][i] += grid[0][i-1]
        for i in range(1,m):
            grid[i][0] += grid[i-1][0]
        for i in range(1,m):
            for j in range(1,n):
                grid[i][j] += min(grid[i-1][j], grid[i][j-1])
        return grid[-1][-1]

 

1,3,1       1,4,5      1,4,5     1,4,5    1,4,5      1,4,5    1,4,5

1,5,1       1,5,1       2,5,1     2,7,1    2,7,6     2,7,6    2,7,6

4,2,1      4,2,1      6,2,1      6,2,1    6,2,1     6,8,1    6,8,7

 

以上为对应的那个数据的变化过程。

64. Minimum Path Sum

标签:not   note   type   tom   inf   +=   个数   range   image   

原文地址:https://www.cnblogs.com/jyg694234697/p/9560656.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!