题解 | 矩阵的最小路径和
矩阵的最小路径和
https://www.nowcoder.com/practice/7d21b6be4c6b429bb92d219341c4f8bb
#include <vector>
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param matrix int整型vector<vector<>> the matrix
* @return int整型
*/
//典型的动态规划,最终结果依赖于它上一次的结果
int minPathSum(vector<vector<int> >& matrix) {
// write code here
if(matrix.size()==0)
{
return 0;
}
int m=matrix.size();
int n=matrix[0].size();
vector<int> dp(n);
dp[0]=matrix[0][0];
for(int i=1;i<n;i++)
{
dp[i]=matrix[0][i]+dp[i-1];
}
for(int i=1;i<m;i++)
{
dp[0]=dp[0]+matrix[i][0];
for(int j=1;j<n;j++)
{
dp[j]=matrix[i][j]+min(dp[j-1],dp[j]);
}
}
return dp[n-1];
}
};

