4ms, My java solution via DP


  • 0
    public class Solution {
    	public int minPathSum(int[][] grid) {
    		int row = grid.length;
    		int col = grid[0].length;
    		int[][] dp = new int[row][col];
    		dp[0][0] = grid[0][0];
    		// 初始化第一行
    		for (int i = 1; i < col; i++) {
    			dp[0][i] = dp[0][i - 1] + grid[0][i];
    		}
    		// 初始化第一列
    		for (int i = 1; i < row; i++) {
    			dp[i][0] = dp[i - 1][0] + grid[i][0];
    		}
    		for (int i = 1; i < row; i++) {
    			for (int j = 1; j < col; j++) {
    				dp[i][j] = Math.min(dp[i - 1][j], dp[i][j - 1]) + grid[i][j];
    			}
    		}
    		return dp[row - 1][col - 1];
    	}
    

    }


Log in to reply
 

Looks like your connection to LeetCode Discuss was lost, please wait while we try to reconnect.