
LeetCode 64. 最小路径和(Minimum Path Sum) 20
发布日期:2025-04-04 23:51:46
浏览次数:10
分类:精选文章
本文共 1547 字,大约阅读时间需要 5 分钟。
要在一个m x n网格中找到从左上角到右下角的最小路径和,每次只能向右或向下移动。这个问题可以通过动态规划来解决。动态规划的方法可以在线性时间内计算出最优路径和,适用于各种网格大小。
步骤解释
初始化动态规划表:
- 创建一个大小为m x n的二维数组
dp
,其中dp[i][j]
表示到达位置(i,j)的最小路径和。
填充动态规划表:
- 边界条件:
- 对于第1行(i=0),每个位置只能从左边的位置过来,故`dp[0][j] = grid[0][j] + dp[0][j-1](j>0)。
- 对于第1列(j=0),每个位置只能从上边的位置过来,故`dp[i][0] = grid[i][0] + dp[i-1][0](i>0)。
- 其他位置:
- 对于每个位置(i,j),计算来自左边(i,j-1)和上边(i-1,j)的最小值,加上当前位置的值,即`dp[i][j] = min(dp[i-1][j], dp[i][j-1]) + grid[i][j]。
返回最终结果:
dp[m-1][n-1]
即为从左上角到右下角的最小路径和。
代码实现
以下是Java代码实现示例:
public class MinimumPathSum { public int minPathSum(int[][] grid) { int m = grid.length; if (m == 0) return 0; int n = grid[0].length; if (n == 0) return 0; int[][] dp = new int[m][n]; dp[0][0] = grid[0][0]; // 填充第一行 for (int j = 1; j < n; j++) { dp[0][j] = dp[0][j-1] + grid[0][j]; } // 填充第一列 for (int i = 1; i < m; i++) { dp[i][0] = dp[i-1][0] + grid[i][0]; } // 填充其他位置 for (int i = 1; i < m; i++) { for (int 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]; }}
示例解释
考虑输入网格:
1 3 11 5 14 2 1
动态规划表格填充过程:
dp[0][0] = 1
- 第一行:
dp[0] = [1, 4, 5]
- 第一列:
dp[:,0] = [1, 2, 8]
- 填充其他位置:
dp[1][1] = min(2, 4) + 5 = 2 + 5 = 7
dp[1][2] = min(7, 5) + 1 = 5 + 1 = 6
dp[2][1] = min(8, 7) + 2 = 7 + 2 = 9
dp[2][2] = min(9, 6) + 1 = 6 + 1 = 7
最终输出:7
,与示例结果一致。
总结
通过动态规划,我们能够有效地找到网格中的最小路径和,该方法在O(mn)的时间复杂度下完成计算,适用于各种大小的网格问题。
发表评论
最新留言
路过按个爪印,很不错,赞一个!
[***.219.124.196]2025年04月18日 09时32分52秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
100个电脑常用组合键大全(非常详细)零基础入门到精通,收藏这篇就够了
2025-03-29
10个程序员可以接私活的平台
2025-03-29
10条sql语句优化的建议
2025-03-29
10款最佳免费WiFi黑客工具(附传送门)零基础入门到精通,收藏这一篇就够了
2025-03-29
15个备受欢迎的嵌入式GUI库,从零基础到精通,收藏这篇就够了!
2025-03-29
15个程序员常逛的宝藏网站!!从零基础到精通,收藏这篇就够了!
2025-03-29
2023应届毕业生找不到工作很焦虑怎么办?
2025-03-29
2024 年需要了解的顶级大数据工具(非常详细)零基础入门到精通,收藏这一篇就够了
2025-03-29
2024大模型行业应用十大典范案例集(非常详细)零基础入门到精通,收藏这一篇就够了
2025-03-29
2024年全球顶尖杀毒软件,从零基础到精通,收藏这篇就够了!
2025-03-29
2024年最流行的十大开源渗透测试工具
2025-03-29
2024年网络安全八大前沿趋势,零基础入门到精通,收藏这篇就够了
2025-03-29
2024年薪酬最高的五个网络安全职位,零基础入门到精通,收藏这一篇就够
2025-03-29
2024年非科班的人合适转行做程序员吗?
2025-03-29
2024数字安全创新性案例报告,从零基础到精通,收藏这篇就够了!
2025-03-29
2024最新最全CTF入门指南(非常详细)零基础入门到精通,收藏这一篇就够了
2025-03-29