题解 | #矩阵的最小路径和#

矩阵的最小路径和

https://www.nowcoder.com/practice/7d21b6be4c6b429bb92d219341c4f8bb

/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 *
 * @param matrix int整型二维数组 the matrix
 * @return int整型
 */
function minPathSum(matrix) {
    // write code here
    // 动态规划,到达某一个点的计算公式如下:
    // dp[i][j] = matrix[i][j]+Math.min(dp[i-1][j],dp[i][j-1])

    if (matrix.length == 0 || matrix[0].length == 0) {return -1;}
    let dp = [];
    for (let i = 0; i < matrix.length; i++) {
        dp.push([])
        for (let j = 0; j < matrix[0].length; j++) {
            if(i==0 && j==0){
                dp[i].push(matrix[i][j])
            }else if(i==0){
                dp[i].push(matrix[i][j]+dp[i][j-1])
            }else if(j==0){
                dp[i].push(matrix[i][j]+dp[i-1][j])
            }else{
                dp[i].push(matrix[i][j]+Math.min(dp[i-1][j],dp[i][j-1]))
            }
        }
    }
    console.log(dp)
    return dp[matrix.length-1][matrix[0].length-1]
}
module.exports = {
    minPathSum: minPathSum,
};

全部评论

相关推荐

04-15 23:42
中山大学 Java
ResourceUtilization:过几天楼主就会捧着一堆offer来问牛友们该怎么选辣
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务