【DP】64.最小路径和

题目

法1:二维DP

必须掌握!

java 复制代码
class Solution {
    public int minPathSum(int[][] grid) {
        int m = grid.length, n = grid[0].length;
        int[][] matrix = new int[m][n];
        matrix[0][0] = grid[0][0];
        for (int i = 1; i < n; ++i) {
            matrix[0][i] = matrix[0][i - 1] + grid[0][i];
        }
        for (int i = 1; i < m; ++i) {
            matrix[i][0] = matrix[i - 1][0] + grid[i][0];
        }
        for (int i = 1; i < m; ++i) {
            for (int j = 1; j < n; ++j) {
                matrix[i][j] = Math.min(matrix[i - 1][j], matrix[i][j - 1]) + grid[i][j];
            }
        }

        return matrix[m - 1][n - 1];
    }
}
相关推荐
洞察物理世界3 天前
【SI_DP】深入理解DP协议AUX通道信号
dp·硬件测试·dp工作原理·aux信号
The Chosen One9856 天前
分享对dp题目的理解-不断更新ing
笔记·算法·深度优先·动态规划·dp
Hello eveybody14 天前
介绍一下背包DP(C++)
开发语言·c++·动态规划·dp·背包dp
Hello eveybody18 天前
介绍一下背包DP(Python)
开发语言·python·动态规划·dp·背包dp
语戚1 个月前
力扣 2463. 最小移动总距离 —— 动态规划 & 贪心排序全解(Java 实现)
java·算法·leetcode·贪心算法·动态规划·力扣·dp
语戚1 个月前
力扣 494. 目标和 —— 回溯 & 动态规划双解法全解(Java 实现)
java·算法·leetcode·动态规划·力扣·dp·回溯
王老师青少年编程1 个月前
动态规划之【树形DP】第4课:树形DP应用案例实践3
c++·动态规划·dp·树形dp·csp·信奥赛·提高组
Tisfy2 个月前
LeetCode 1594.矩阵的最大非负积:动态规划O(mn)
leetcode·矩阵·动态规划·dp
像污秽一样2 个月前
算法设计与分析-习题9.1
数据结构·算法·dfs·dp·贪婪
像污秽一样2 个月前
算法设计与分析-习题8.1
数据结构·算法·dfs·dp