问题详见: Minimum Path Sum
该题也是一个动态规划题,题目让我们求解一个给定的二维数组中从左上角到右下角最短的路径和。题目描述如下:
Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which minimizes the sum of all numbers along its path.
Note: You can only move either down or right at any point in time.
解题思路:
由题可知,如果只有一行或者一列,直接将所有元素相加即为最短路径和。然后动态方程是sum[i][j] = min(sum[i - 1][j], sum[i][j - 1]) + grid[i][j];,即要么从左边,要么从上边到达遍历到的点。整个算法复杂度为

本文介绍了一种使用动态规划解决二维数组中最短路径和问题的方法。针对从左上角到右下角路径上的最小数值和,给出了详细的算法实现过程,并提供了C++代码示例。
最低0.47元/天 解锁文章
2713

被折叠的 条评论
为什么被折叠?



