当前位置: 首页 > news >正文

【算法|动态规划No.17】leetcode64. 最小路径和

个人主页:兜里有颗棉花糖
欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创
收录于专栏【手撕算法系列专栏】【LeetCode】
🍔本专栏旨在提高自己算法能力的同时,记录一下自己的学习过程,希望对大家有所帮助
🍓希望我们一起努力、成长,共同进步。
在这里插入图片描述

点击直接跳转到该题目

目录

  • 1️⃣题目描述
  • 2️⃣题目解析
  • 3️⃣解题代码

1️⃣题目描述

给定一个包含非负整数的 m x n 网格 grid ,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。

明:每次只能向下或者向右移动一步。

示例1:

在这里插入图片描述

输入:grid = [[1,3,1],[1,5,1],[4,2,1]]
输出:7
解释:因为路径 1→3→1→1→1 的总和最小。

示例2:

输入:grid = [[1,2,3],[4,5,6]]
输出:12

注意:

  • m == grid.length
  • n == grid[i].length
  • 1 <= m, n <= 200
  • 0 <= grid[i][j] <= 200

2️⃣题目解析

状态表示:

  • 到达(i,j)位置的最小路径和。

状态转移方程:

  • dp[i][j] = min(dp[i - 1][j] , dp[i][j - 1]) + grid[i - 1][j - 1];

返回值:

  • dp[m][n]注意,由于我这里多开辟了一行一列的空间,所以最后返回的是最后一个位置的dp值,即到达最后一个位置的最小路径和。

3️⃣解题代码

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

通过啦!!!
在这里插入图片描述

相关文章:

  • jar 命令启动java 指定配置文件路径 jar如何启动
  • 「才得吹嘘身渐稳」,也来谈谈大模型
  • 95740-26-4|用于体内DNA合成的探针F-ara-EdU
  • MATLAB算法实战应用案例精讲-【图像处理】SLAM技术详解
  • CTF Misc(3)流量分析基础以及原理
  • Springboot 集成 Redis集群配置公网IP连接报私网IP连接失败问题
  • 数据挖掘与统计分析——T检验,正态性检验和一致性检验——代码复现
  • idea 插件推荐(持续更新)
  • 20231009-学习笔记
  • 【新书推荐】当 Python 遇到 ChatGPT —— 自动化办公落地
  • AI如何帮助Salesforce从业者找工作?
  • Qt如何实现动态背景-视频背景
  • Hazelcast系列(八):数据结构
  • Vue整合
  • 在linux下的vim中使用内联函数时,会有未定义的引用错误解决办法
  • 如何获取standard cell各端口的作用
  • flutter StreamSubscription 订阅者 stream
  • JAVA-SpringBoot入门Demo用IDEA建立helloworld
  • LONGLORA: EFFICIENT FINE-TUNING OF LONGCONTEXT LARGE LANGUAGE MODELS
  • 机器学习:随机森林
  • 肖峰读《从塞北到西域》︱拉铁摩尔的骆驼
  • 中国海外发展:今年前4个月销售665.8亿元,花费305亿元拿地
  • 长江画派创始人之一、美术家鲁慕迅逝世,享年98岁
  • 江西省直机关工委副书记熊亮华履新宜春市委常委、宣传部部长
  • 东洋学人|滨田青陵:近代日本考古学第一人
  • 欧洲承诺投资6亿欧元吸引外国科学家