[LeetCode]Minimum Path Sum
2014-12-17 19:37
246 查看
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.
解答:本题采用动态规划的方法,逐列扫描直至目标点
![](http://images.cnitblog.com/blog/318395/201412/171933312344492.png)
先计算第一行的路径权值f(0),f(1),f(2),接着进行换行,再逐列比较选择路径,依次类推,最终到达目标点。
代码如下:
Note: You can only move either down or right at any point in time.
解答:本题采用动态规划的方法,逐列扫描直至目标点
![](http://images.cnitblog.com/blog/318395/201412/171933312344492.png)
先计算第一行的路径权值f(0),f(1),f(2),接着进行换行,再逐列比较选择路径,依次类推,最终到达目标点。
代码如下:
class Solution { public: int minPathSum(vector<vector<int> > &grid) { int m = grid.size(); int n = grid[0].size(); if(m==1&&n==1) return grid[0][0]; int minsum=grid[0][0]; vector<int> f; f.resize(n); f[0]=grid[0][0]; //设置一个迭代结构 for(int i=1;i<n;i++){ f[i]=grid[0][i]+f[i-1]; } for(int i=1;i<m;i++){ f[0]+=grid[i][0]; for(int j=1;j<n;j++){ f[j]=min(f[j-1],f[j])+grid[i][j]; } } return f[n-1]; } };
相关文章推荐
- 【LeetCode】 064. Minimum Path Sum
- LeetCode Minimum Path Sum
- 【LeetCode-面试算法经典-Java实现】【064-Minimum Path Sum(最小路径和)】
- leetcode:Minimum Path Sum
- LeetCode | Minimum Path Sum(最小路径和)
- 【LeetCode】Minimum Path Sum
- Minimum Path Sum - LeetCode
- 【LeetCode】Minimum Path Sum
- 【题解】【矩阵】【DP】【Leetcode】Minimum Path Sum
- 【LeetCode】Minimum Path Sum
- 【LeetCode-动态规划】Minimum Path Sum【重要->状态转移方程取最值】
- [leetcode]Minimum Path Sum
- LeetCode题解——Minimum Path Sum
- LeetCode 64 Minimum Path Sum(动态规划)
- leetcode - Minimum Path Sum
- [LeetCode56]Minimum Path Sum
- 【LeetCode】【Python】Minimum Path Sum
- Minimum Path Sum leetcode java
- LeetCode--Minimum Path Sum
- LeetCode算法题——Minimum Path Sum