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

矩阵的最小路径和

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

 * 
 * @param matrix int整型二维数组 the matrix
 * @return int整型
 */

function minPathSum( matrix ) {
    // write code here往右边或者下 左上角到右下角
    let m  = matrix.length
    let n = matrix[0].length
    //二维数组的定义 若无dp = matrix 会报错 
//     let dp = new Array() 
//     dp = matrix
    //或者初始化二维数组  行的填充值不能不定义
    let dp = Array(m).fill(0).map(x => Array(n).fill(0));
    dp[0][0] = matrix[0][0]
    for(let i = 1; i < n; i++){
        dp[0][i] = dp[0][i-1] + matrix[0][i]
    }
    for(let i = 1; i < m; i++){
        dp[i][0] = dp[i-1][0] + matrix[i][0]
    }
    for(let i = 1; i < m; i++){
        for(let j = 1; j < n;j++){
            dp[i][j] = Math.min(dp[i - 1][j],dp[i][j-1]) + matrix[i][j]
        }
    }
    return dp[m-1][n-1]
}
module.exports = {
    minPathSum : minPathSum
};
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务