参考链接:https://blog.nowcoder.net/n/41876a3d44a043f885edbf15ba098a36
import java.util.*;
public class Solution {
/**
*
* @param matrix int整型二维数组 the matrix
* @return int整型
*/
public int minPathSum (int[][] matrix) {
int rowLen = matrix.length;
int columnLen = matrix[0].length;
int[][] dp = new int[rowLen][columnLen];
for (int row = 0; row < rowLen; row++) {
for (int column = 0; column < columnLen; column++) {
if (row == 0 && column == 0) {
dp[row][column] = matrix[0][0];
continue;
}
if (row == 0 && column != 0) {
dp[row][column] = dp[row][column-1] + matrix[row][column];
continue;
}
if (column == 0) {
dp[row][column] = dp[row-1][column] + matrix[row][column];
continue;
}
dp[row][column] = matrix[row][column] + Math.min(dp[row-1][column], dp[row][column-1]);
}
}
return dp[rowLen-1][columnLen-1];
}
}


京公网安备 11010502036488号