[LeetCode]64. 最小路径和

算法标签 DP

题目简叙

[LeetCode]64. 最小路径和_第1张图片

思路

典型DP
数值累加
状态转移方程如下:
当前位置所处的 行与列 处于为边界时候:

	当前的值即为 自身本身 

当前位置所处的 行 处于为边界时候:

	当前的值即为 上方 的累加

当前位置所处的 列 处于为边界时候:

	当前的值即为 左方 的累加

当都不属于的时候

	当前的值即为 上方和左方最小值 的累加

代码

class Solution {
public:
    int minPathSum(vector<vector<int>>& grid) {
        for(int i=0;i<grid.size();i++)
            for(int j=0;j<grid[0].size();j++)
                if(i==0&&j==0)continue;
                else if(i==0)grid[i][j]+=grid[i][j-1];
                else if(j==0)grid[i][j]+=grid[i-1][j];
                else grid[i][j]+=min(grid[i-1][j],grid[i][j-1]);
        return grid[grid.size()-1][grid[0].size()-1];
    }
};

AC记录

[LeetCode]64. 最小路径和_第2张图片

你可能感兴趣的:(LeetCode,动态规划)