题目链接: 剑指 Offer II 099. 最小路径之和 - 力扣(LeetCode)
题目描述

解题思路
- 首先定义一个存放遍历结果的数组,这个数组的每一个元素代表到达这个位置的最小加权
- 我们双重for循环往后面遍历
- 返回f[m-1][n-1]
代码实现
class Solution {
public:
int minPathSum(vector<vector<int>>& grid) {
int m=grid.size();
int n=grid[0].size();
int f[m][n];
for(int i=0;i<m;i++){
for(int j=0;j<n;j++){
if(i==0&&j==0){
f[i][j]=grid[i][j];
}
else if(i==0){
f[i][j]=grid[i][j]+f[i][j-1];
}else if(j==0){
f[i][j]=grid[i][j]+f[i-1][j];
}else{
f[i][j]=grid[i][j]+min(f[i][j-1],f[i-1][j]);
}
}
}
return f[m-1][n-1];
}
};