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

Minimum Path Sum

时间:2014-09-12 10:19:33      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:leetcode   algorithm   算法   

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 0;
        }
        int ROW=grid.length;
        int COL=grid[0].length;
        int [][]DISTANCE=new int[ROW][COL];
        int row,col;
        DISTANCE[0][0]=grid[0][0];
        for(col=1;col<COL;col++)
        {
            DISTANCE[0][col]=DISTANCE[0][col-1]+grid[0][col];
        }
        for(row=1;row<ROW;row++)
        {
            DISTANCE[row][0]=DISTANCE[row-1][0]+grid[row][0];
        }
        for(col=1;col<COL;col++)
        {
            for(row=1;row<ROW;row++)
            {
                DISTANCE[row][col]=Math.min( DISTANCE[row-1][col], DISTANCE[row][col-1])+grid[row][col];
            }
        }
        return DISTANCE[ROW-1][COL-1];
    }
}


Minimum Path Sum

标签:leetcode   algorithm   算法   

原文地址:http://blog.csdn.net/jiewuyou/article/details/39225385

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