BM68-矩阵的最小路径和

题目

给定一个 n * m 的矩阵 a,从左上角开始每次只能向右或者向下走,最后到达右下角的位置,路径上所有的数字累加起来就是路径和,输出所有的路径中最小的路径和。

数据范围: 1≤n,m≤500,矩阵中任意值都满足 0≤ai,j​≤100

要求:时间复杂度O(nm)

例如:当输入[[1,3,5,9],[8,1,3,4],[5,0,6,1],[8,8,4,0]]时,对应的返回值为12,

所选择的最小累加和路径如下图所示:

示例1

输入:

[[1,3,5,9],[8,1,3,4],[5,0,6,1],[8,8,4,0]]

返回值:

12

示例2

输入:

[[1,2,3],[1,2,3]]

返回值:

7

备注:

1≤n,m≤2000

1≤ai,j​≤100


代码

import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** @param matrix int整型二维数组 the matrix* @return int整型*/public int minPathSum (int[][] matrix) {//1.创建dp表int m = matrix.length, n = matrix[0].length;int[][] dp = new int[m + 1][n + 1];//2.初始化for(int i = 0; i <= m; i ++) {dp[i][0] = Integer.MAX_VALUE;}for(int j = 0; j <= n; j++) {dp[0][j] = Integer.MAX_VALUE;}dp[0][1] = dp[1][0] = 0;//3.填表for(int i = 1; i <= m; i++) {for(int j = 1; j <= n; j++) {dp[i][j] = Math.min(dp[i- 1][j], dp[i][j - 1]) + matrix[i - 1][j - 1];}}//4.返回值return dp[m][n];}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/18766.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

GEE:多元线性回归

作者:CSDN @ _养乐多_ 本文记录了在NDVI、EVI和LAI作为自变量,precipitation作为因变量的条件下,使用linearRegression函数进行线性回归分析的代码,代码在Google Earth Engine(GEE)平台上实现。具体而言,该函数可以计算NDVI、EVI和LAI对precipitation的影响关系。通过线…

IDEA+springboot+ssm+layui+mysql高校宿舍管理系统源码

IDEAspringbootssmlayuimysql高校宿舍管理系统源码 一、系统介绍1.环境配置 二、系统展示1. 管理员登录2.宿舍列表3.预分配宿舍4.宿舍分配信息5. 留校管理6. 报修管理7. 留言管理8.卫生管理9.我的宿舍10.我的报修11.卫生检查记录12.离校登记13.留校申请14.返校登记15.留言板16.…

Spring Boot单元测试

前言&#x1f36d; ❤️❤️❤️SSM专栏更新中&#xff0c;各位大佬觉得写得不错&#xff0c;支持一下&#xff0c;感谢了&#xff01;❤️❤️❤️ Spring Spring MVC MyBatis_冷兮雪的博客-CSDN博客 Spring Boot 中进行单元测试是一个常见的做法&#xff0c;可以帮助你验证…

Python(一):为什么我们要学习Python?

❤️ 专栏简介&#xff1a;本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中&#xff0c;我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。 ☀️ 专栏适用人群 &#xff1a;本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无…

ChatGLM 实践赛之学术工具创意开发丨智谱 AI × 和鲸科技

2022 年底以来&#xff0c;LLM 大规模语言模型备受瞩目。今年 3 月中旬&#xff0c;智谱 AI 与清华大学强强联合&#xff0c;重磅发布了 ChatGLM-6B 开源模型。截止 6 月 24 日&#xff0c;该模型的下载量超过三百万人次&#xff0c;并在 Hugging Face&#xff08;HF&#xff0…

003.PADS VX2.4选项设置及显示颜色设置

文章目录 一、PADS颜色设置及选项设置二、选项设置1.全局2.设计3.栅格和捕获4.显示5.布线选项页6.覆铜平面选项页7.文本和线选项页8.文本和线选项页9.过孔样式选项页 一、PADS颜色设置及选项设置 一、颜色设置 1&#xff0e;点击设置—显示颜色&#xff09;&#xff08;快捷键…

操作系统——输入输出IO管理

文章目录 **1 I/O管理概述****1.1 I/O设备****1.2 I/O控制方式****1.2.1 程序直接控制方式****1.2.2 中断驱动方式****1.2.3 DMA方式****1.2.4 通道控制方式** **1.3 I/O软件层次结构****1.4 应用程序I/O接口** **2 设备独立性软件****2.1 高速缓冲与缓冲区****2.2 设备分配和回…

MySQL基础篇第7章(单行函数)

文章目录 1、函数的理解1.1 什么是函数1.2 不同DBMS函数的差异1.3 MySQL的内置函数分类 2、数值函数2.1 基本函数2.2 角度与弧度互转函数2.3 三角函数2.4 指数和对数2.5 进制间的转换 3、字符串函数4、日期和时间函数4.1 获取日期、时间4.2 日期与时间戳的转换4.3 获取月份、星…

【Vue2.0源码学习】模板编译篇-模板解析阶段(整体运行流程)

文章目录 1. 前言2. 什么是模板编译3. 整体渲染流程4. 模板编译内部流程4.1 抽象语法树AST4.2 具体流程 5. 小总结6. 整体流程7. 回到源码8. 总结 1. 前言 在前几篇文章中&#xff0c;我们介绍了Vue中的虚拟DOM以及虚拟DOM的patch(DOM-Diff)过程&#xff0c;而虚拟DOM存在的必…

Matrix Breakout:2 Morpheus(靶机详细渗透测试过程记录)

nmap -sS -p 80 -oG - 192.168.192.0/24 | grep open 探测网段下开放80端口的主机。 扫描目录 发现该界面 存储型xss 发现file参数貌似可以控制读取文件目标。 尝试利用伪协议读取&#xff0c;文件内容。 解码&#xff0c;分析源代码&#xff1a; <?php$file"graff…

Python基础综合案例-数据可视化(柱状图)

今天给大家带来的是Python综合实战开发的数据可视化操作 通过python实现对数据的分析、可视化 数据来源:线上公布数据&#xff0c;需要可私信 前期准备工作&#xff1a;Python可视化准备工作 前期模块安装等前期基础的准备工作大家可以看我之前的文章讲解&#xff0c;有问题可…

双向复制粘贴半监督医学图像分割

文章目录 Bidirectional Copy-Paste for Semi-Supervised Medical Image Segmentation摘要本文方法实验结果 Bidirectional Copy-Paste for Semi-Supervised Medical Image Segmentation 摘要 在半监督医学图像分割中&#xff0c;存在标记数据与未标记数据分布不匹配的问题。…