Minimum Path Sum
Minimum Path Sum
问题:
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
思路:
简单的动态规划问题
我的代码:
public class Solution { public int minPathSum(int[][] grid) { if(grid == null || grid.length == 0 || grid[0].length == 0) return -1; int row = grid.length; int col = grid[0].length; for(int i = 1; i < row; i++) grid[i][0] += grid[i-1][0]; for(int j = 1; j < col; j++) grid[0][j] += grid[0][j-1]; for(int i = 1; i < row ; i++) { for(int j = 1; j < col; j++) { grid[i][j] += Math.min(grid[i-1][j],grid[i][j-1]); } } return grid[row-1][col-1]; } }
posted on 2015-03-07 16:33 zhouzhou0615 阅读(148) 评论(0) 编辑 收藏 举报