leetcode: Minimum Path Sum

来源:互联网 发布:ubuntu安装有道词典 编辑:程序博客网 时间:2024/05/23 01:27

和之前的Unique Path大体一样,不同的就是动态规划flag[i][j]代表的是到该点的最短距离而不是可能路径数。  这个值相当于改点的值加上min(flag[i][j-1],flag[i-1][j])。


public class Solution {    public int minPathSum(int[][] grid) {        int m = grid.length;        if(m==0)        {            return 0;        }        int n = grid[0].length;        if(n==0)        {            return 0;        }        for(int i=0;i<m;i++ )        {            for(int j=0;j<n;j++ )            {                if(i==0&&j==0)                {                    continue;                }                if(i==0)                {                    grid[i][j] += grid[i][j-1];                }                else if(j==0)                {                    grid[i][j] += grid[i-1][j];                }                else                {                    grid[i][j] += Math.min(grid[i-1][j],grid[i][j-1]);                }            }        }        return grid[m-1][n-1];    }}


0 0
原创粉丝点击