[DP] Minimum Path Sum
2015-12-14 14:56
309 查看
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.
分析:符合DP求解条件。
递推关系:dp[i][j] = grid[i][j] + max{dp[i][j - 1], [i - 1][j]}
Note: You can only move either down or right at any point in time.
分析:符合DP求解条件。
递推关系:dp[i][j] = grid[i][j] + max{dp[i][j - 1], [i - 1][j]}
public class Solution { public int minPathSum(int[][] grid) { int row = grid.length; int column = grid[0].length; if (row == 0 || column == 0) { return 0; } int[][] dp = new int[row][column];; for (int i = 0; i < row; ++i) { for (int j = 0; j < column; ++j) { if (i == 0 && j != 0) { dp[0][j] = dp[0][j - 1] + grid[0][j]; } else if (i != 0 && j == 0) { dp[i][0] = dp[i-1][0] + grid[i][0]; } else if (i == 0 && j == 0) { dp[0][0] = grid[0][0]; } else { dp[i][j] = grid[i][j] + Math.min(dp[i][j - 1], dp[i - 1][j]); } } } return dp[row - 1][column - 1]; } }
相关文章推荐
- 转换字符串到整数——LintCode
- fir.im Weekly - 94 个 iOS 开发资源推荐
- Cef设置Cookie
- spring constructor-arg name UnsatisfiedDependencyException 本来打算发在stack overflow上的,死活发不出去,先记着吧
- 安卓学习之路3之插件TextView、EditText和ImageView
- Android入门1:使用VideoView和MediController播放视频
- 微信支付APP支付完全攻略
- JavaNote
- 源码推荐(12.14B):无限图片轮播器,加载时日食效果
- 吐槽在讲课以后
- 迭代器(Iterator)
- (ZZ) 设计模式:观察者模式
- java.lang.IllegalArgumentException: Page directive: invalid value for import
- MEF
- 几道和三角函数有关的题目
- pg_dump和pg_restore
- Android sdk镜像设置
- Scala编程实例:使用Set和Map
- WebService:CXF开发
- Java类文件结构