LeetCode--minimum-path-sum
2018-01-23 21:23
369 查看
题目描述
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.
分析:可以很容易想到用dfs方法或dp方法求解,思路比较简单。dfs递归的方法容易超时,可以用dp方法维护一个二维数组,代码如下:
class Solution {
public:
int minPathSum(vector<vector<int> > &grid) {
int m = grid.size(), n = grid[0].size();
int dp[m]
;
dp[0][0] = grid[0][0];
for (int i = 1; i < m; ++i) dp[i][0] = grid[i][0] + dp[i - 1][0];
for (int i = 1; i < n; ++i) dp[0][i] = grid[0][i] + dp[0][i - 1];
for (int i = 1; i < m; ++i) {
for (int j = 1; j < n; ++j) {
dp[i][j] = grid[i][j] + min(dp[i - 1][j], dp[i][j - 1]);
}
}
return dp[m - 1][n - 1];
}
};
相关文章推荐
- leetcode -- Minimum Path Sum
- LeetCode 64 Minimum Path Sum (数字三角形)
- LeetCode 064 Minimum Path Sum
- [leetcode 64] Minimum Path Sum
- LeetCode Num64_Minimum Path Sum
- LeetCode 63 Minimum Path Sum
- 【leetcode】Minimum Path Sum
- leetcode 064. Minimum Path Sum
- [LeetCode]Minimum Path Sum
- [leetcode] Minimum Path Sum
- Java for LeetCode 064 Minimum Path Sum
- LeetCode 64 — Minimum Path Sum(C++ Java Python)
- LeetCode 64 Minimum Path Sum
- LeetCode Minimum Path Sum
- leetcode 64 Minimum Path Sum C++
- LeetCode 064 Minimum Path Sum
- [LeetCode] Minimum Path Sum in Matrix
- LeetCode Minimum Path Sum
- Leetcode 64 Minimum Path Sum
- Leetcode Minimum Path Sum