欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 产业 > LeetCode 64. 最小路径和(HOT100)

LeetCode 64. 最小路径和(HOT100)

2025/2/24 4:17:09 来源:https://blog.csdn.net/kitesxian/article/details/144218708  浏览:    关键词:LeetCode 64. 最小路径和(HOT100)

第一次错误代码: 

class Solution {
public:int minPathSum(vector<vector<int>>& grid) {int dp[205][205] = {0};int m = grid.size(),n = grid[0].size();for(int i = 1 ;i<=m;i++){for(int j = 1;j<=n;j++){dp[i][j] = min(dp[i][j-1],dp[i-1][j])+grid[i-1][j-1];}}return dp[m][n];}
};

正确代码:
 

class Solution {
public:int minPathSum(vector<vector<int>>& grid) {if(grid.size()==0)return 0;int m = grid.size(),n = grid[0].size();vector<vector<int>>dp(m,vector<int>(n,INT_MAX));dp[0][0]  = grid[0][0];//第一行for(int j = 1;j<n;j++){dp[0][j] = dp[0][j-1]+grid[0][j];}//第一列for(int j = 1;j<m;j++){dp[j][0] = dp[j-1][0]+grid[j][0];}//othersfor(int i = 1;i<m;i++){for(int j = 1;j<n;j++){dp[i][j] = min(dp[i-1][j],dp[i][j-1])+grid[i][j];}}return dp[m-1][n-1];        }
};

 

class Solution {
public:int minPathSum(vector<vector<int>>& grid) {if (!grid.size())return 0;int m = grid.size(), n = grid[0].size();vector<vector<int>> dp(m, vector<int>(n, INT_MAX));for (int i = 0; i < m; i++) {for (int j = 0; j < n; j++) {if (!i && !j) {//[0][0]dp[0][0] = grid[0][0];} else if (!i) {//第一行dp[i][j] = dp[i][j - 1] + grid[i][j];} else if (!j) {//第二行dp[i][j] = dp[i - 1][j] + grid[i][j];} else {dp[i][j] = min(dp[i - 1][j], dp[i][j - 1]) + grid[i][j];}}}return dp[m - 1][n - 1];}
};

空间优化:直接在grid数组上记录:

class Solution {
public:int minPathSum(vector<vector<int>>& grid) {int m = grid.size(),n = grid[0].size();for(int i = 0;i<m;i++){for(int j = 0;j<n;j++){if(!i&&!j)continue;if(!i)grid[i][j] +=grid[i][j-1];else if(!j)grid[i][j]+=grid[i-1][j];else grid[i][j]  = min(grid[i-1][j],grid[i][j-1])+grid[i][j];}}return grid[m-1][n-1];}
};

本题注意:第一列和第一行需要特殊处理,以为它们只能分别从上面 左边过来。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词