解题思路
动态规划DP,可以看官方题解动态图
代码
class Solution {
public int minPathSum(int[][] grid) {
int n = grid.length,m = grid[0].length;
for(int i=1;i<m;i++){
grid[0][i]=grid[0][i]+grid[0][i-1];
}
for(int i=1;i<n;i++){
grid[i][0]=grid[i][0]+grid[i-1][0];
}
for(int i=1;i<n;i++){
for(int j=1;j<m;j++){
grid[i][j]=grid[i][j]+Math.min(grid[i][j-1],grid[i-1][j]);
}
}
return grid[n-1][m-1];
}
}