每日一题:LeetCode-64. 最小路径和
刷题使我快乐,满脸开心.jpg
来源:力扣(LeetCode)
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
题目
给定一个包含非负整数的 m
x n
网格 grid
,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。
说明:每次只能向下或者向右移动一步。
示例 1:
复制代码
示例 2:
复制代码
提示:
m == grid.length
n == grid[i].length
1 <= m, n <= 200
0 <= grid[i][j] <= 200
思路
这道题是道非常标准的动态规划题了
dp[i][j]含义就是到达此位置时的最小路径和
状态方程也很是好写
dp[i][j] = min(dp[i-1][j], dp[i][j-1]) + grip[i][j]
还有最后一个问题就是初始化,我们配合一个图来看下:
因为只能
往下
、往右
走,那么没有上面元素的第一排
,和没有左边元素的第一列
,就是可以固定写出对应dp
数组内容的地方了,初始化至此也就完成了,其余的元素,其上方和左方元素都可以推算而出了
基本上代码也就出来了
代码
复制代码
欢迎关注公众号查看更多题目~
版权声明: 本文为 InfoQ 作者【半亩房顶】的原创文章。
原文链接:【http://xie.infoq.cn/article/752984c957687ea28fa9e242e】。文章转载请联系作者。
评论