题解 | #矩阵的最小路径和#
矩阵的最小路径和
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) { vector<int> dp(matrix[0].size()); int m = matrix.size(); int n = matrix[0].size(); for(int i = 0; i < n; i++) { dp[i] = matrix[0][i]; if(i != 0) dp[i] += dp[i - 1]; } for(int i = 1; i < m; i++) { for(int j = 0; j < n; j++) { if(j == 0) { dp[j] += matrix[i][j]; } else { dp[j] = min(dp[j - 1], dp[j]) + matrix[i][j]; } } } return dp[n - 1]; } };
仅用一维即可