给定一个包含非负整数的 m x n 网格 grid ,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。

    说明:每次只能向下或者向右移动一步。

    输入:grid = [[1,3,1],[1,5,1],[4,2,1]]
    输出:7
    解释:因为路径 1→3→1→1→1 的总和最小。

    输入:grid = [[1,2,3],[4,5,6]]
    输出:12

    1. var minPathSum = function (grid) {
    2. let row = grid.length, col = grid[0].length
    3. for (let i = 1; i < row; i++) // 初始化第一行
    4. grid[i][0] += grid[i - 1][0]
    5. for (let j = 1; j < col; j++) // 初始化第一列
    6. grid[0][j] += grid[0][j - 1]
    7. for (let i = 1; i < row; i++)
    8. for (let j = 1; j < col; j++)
    9. grid[i][j] += Math.min(grid[i - 1][j], grid[i][j - 1])
    10. return grid[row - 1][col - 1]
    11. };