← [ BACK_TO_NOTES ]

最小路径和

网格 DP 经典题:从上和左转移,求到右下角的最小路径和。

#algorithm #snippet #growing #leetcode #dp

[!info] related notes 动态规划 网格 DP 与双序列 DP

最小路径和

题目链接:https://leetcode.cn/problems/minimum-path-sum/

状态

dp[i][j] 表示从左上角走到 (i, j) 的最小路径和。

转移

dp[i][j] = min(dp[i - 1][j], dp[i][j - 1]) + grid[i][j]

样例

grid = [[1,3,1],[1,5,1],[4,2,1]]

最优路径和是 7。

JavaScript

var minPathSum = function(grid) {
    const m = grid.length;
    const n = grid[0].length;
    const dp = Array.from({ length: m }, () => new Array(n).fill(0));

    dp[0][0] = grid[0][0];

    for (let i = 1; i < m; i++) dp[i][0] = dp[i - 1][0] + grid[i][0];
    for (let j = 1; j < n; j++) dp[0][j] = dp[0][j - 1] + grid[0][j];

    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]) + grid[i][j];
        }
    }

    return dp[m - 1][n - 1];
};
创建于 2026/3/18 更新于 2026/7/15
Digital Biome
Access

键盘导航

j / k / ↑ / ↓
选择对象
Enter / o
打开选择
/ 或 Ctrl+K
全站搜索
i / f / 1–4
筛选当前列表
g → h / l / p / t / a
首页 / 笔记 / 项目 / 工具 / About
r → 1–9
打开所选对象的关联
u
返回上一页
Esc
关闭浮层 / 取消命令;输入框内清空文本