代码随想录算法训练营第三十四天|62.不同路径 , 63. 不同路径 II

  1. 确定dp数组(dp table)以及下标的含义
  2. 确定递推公式
  3. dp数组如何初始化
  4. 确定遍历顺序
  5. 举例推导dp数组

62.不同路径 

代码随想录

视频讲解:动态规划中如何初始化很重要!| LeetCode:62.不同路径_哔哩哔哩_bilibili

class Solution {public int uniquePaths(int m, int n) {// 1.确定dp数组(dp table)以及下标的含义 : dp[i][j] 从[0][0]到[i][j]有多少种路径(是路径不是步数)// 2.确定递推公式 : dp[i][j]只能由这两个方向的路径推导出来dp[i - 1][j],dp[i][j - 1]// dp[i][j] = dp[i - 1][j] + dp[i][j - 1]// 3.dp数组如何初始化 : dp[0][j] = 1; dp[i][0] = 1; 画图,只有一种路径// 4.确定遍历顺序 : 从左往右,从上到下// 5.举例推导dp数组 :int dp[][] = new int[m][n];for (int i = 0; i < m; i++) dp[i][0] = 1;for (int j = 0; j < n; j++) dp[0][j] = 1;for (int i = 1; i < m; i++) {for (int j = 1; j < n; j++) {dp[i][j] = dp[i-1][j]+dp[i][j-1];}}return dp[m-1][n-1];}
}

 63. 不同路径 II 

https://programmercarl.com/0063.%E4%B8%8D%E5%90%8C%E8%B7%AF%E5%BE%84II.htmlhttps://programmercarl.com/0063.%E4%B8%8D%E5%90%8C%E8%B7%AF%E5%BE%84II.html

视频讲解:动态规划,这次遇到障碍了| LeetCode:63. 不同路径 II_哔哩哔哩_bilibili

class Solution {public int uniquePathsWithObstacles(int[][] obstacleGrid) {int dp[][] = new int[obstacleGrid.length][obstacleGrid[0].length];for (int i = 0; i < obstacleGrid.length && obstacleGrid[i][0] == 0; i++) {dp[i][0] = 1;}for (int j = 0; j < obstacleGrid[0].length && obstacleGrid[0][j] == 0; j++) {dp[0][j] = 1;}for (int i = 1; i < obstacleGrid.length; i++) {for (int j = 1; j < obstacleGrid[0].length; j++) {if (obstacleGrid[i][j] == 0) {dp[i][j] = dp[i - 1][j] + dp[i][j - 1];}}}return dp[obstacleGrid.length - 1][obstacleGrid[0].length - 1];}
}

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

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

相关文章

洪水攻击:理解与防御

一、引言 洪水攻击是一种常见的网络攻击手段&#xff0c;其特点是攻击流量巨大&#xff0c;远远超过目标系统或网络的正常处理能力。这种攻击方式会给目标系统带来巨大的压力&#xff0c;可能导致系统崩溃或网络瘫痪。本文将深入探讨洪水攻击的本质、常见类型以及防御策略。 …

gogs 搭建私人git服务器遇到的问题汇总

1、新建用户 运行 sudo adduser git 新建好 git 用户。 su git 以 git 用户登录 2、下载解压安装包 下载地址&#xff1a;From binary - Gogs 选择相对应的版本&#xff0c;下载并解压到/home/git文件下 3、运行安装 首先建立好数据库。在 Gogs 目录的 scripts/mysql.sql…

【ETOJ P1014】straax‘aks Array 题解(多重循环+暴力枚举+位运算)

题目描述 给定一个长度为 n n n 的数组 a a a 和一个整数 m m m&#xff0c;问数组中有多少个三元组 ( i , j , k ) (i,j,k) (i,j,k)&#xff0c;满足&#xff1a; i < j < k i < j < k i<j<k ( a i a j a k ) ( a i ⊕ a j ⊕ a k ) ≥ m (a_i a_j…

Jenkins任意文件读取漏洞(CVE-2024-23897)复现

Jenkins 有一个内置的命令行界面CLI&#xff0c;在处理 CLI 命令时Jenkins 使用args4j 库解析 Jenkins 控制器上的命令参数和选项。此命令解析器具有一个功能&#xff0c;可以将参数中后跟文件路径的字符替换为文件内容 ( expandAtFiles)。具有Overall/Read权限的攻击者可以读取…

mysql主流版本5.5/5.6/5.7/8.0重置修改密码方法

最近几天来回切换各个Mysql版本重置密码&#xff0c;记录一下各个版本重置密码的方法。 MySql 5.5 SET PASSWORD FOR usernamelocalhost PASSWORD(new_password);MySql5.6 SET PASSWORD FOR usernamelocalhost new_password;MySql5.7 ALTER USER usernamelocalhost IDENT…

PeakCAN连接到WSL2 Debian

操作步骤 按照以下步骤进行操作&#xff1a; 在Windows下安装PeakCAN驱动并安装&#xff0c;地址是https://www.peak-system.com/PCAN-USB.199.0.html?&L1 在Windows下安装usbipd&#xff0c;地址是https://github.com/dorssel/usbipd-win/releases&#xff0c;最新版是…

C#字符串匹配(模式搜索)BF(Brute Force)暴力算法

暴力算法概念 暴力算法&#xff08;Brute Force Algorithm&#xff09;是一种简单直接的解决问题的方法&#xff0c;它通过穷举所有可能的解决方案来寻找问题的解。暴力算法通常是基于穷举搜索的思想&#xff0c;遍历所有可能的情况&#xff0c;然后逐一检查每种情况是否满足问…

小米服务治理——客户端熔断器(Google SRE客户端熔断器)

目录 前言 一、什么是Google SRE熔断器 二、Google SRE 熔断器的工作流程&#xff1a; 三、客户端熔断器 (google SRE 熔断器) golang GRPC 实现 四、客户端熔断器 (google SRE 熔断器) golang GRPC单元测试 大家可以关注个人博客&#xff1a;xingxing – Web Developer …

nest.js实现登录验证码功能(学习笔记)

安装express-session npm i express-session 引入 注册session import * as session from express-session;import { NestFactory } from nestjs/core; import {DocumentBuilder,SwaggerModule, } from nestjs/swagger;import { AppModule } from ./app.module;async functio…

解决iCloud备份显灰问题的完全指南

目录 ​编辑 引言 问题背景 可能的原因 1 网络连接问题 2 ICloud账户异常 3 存储空间不足 4 备份设置问题 5 iOS版本问题 解决方法 3.1 检查网络连接 3.2 检查ICloud账户 3.3 检查存储空间 3.4 检查备份设置 3.5 更新iOS版本 3.6 重启设备 3.7 重置ICloud设置 …

CSC联合培养博士申请亲历|联系外导的详细过程

在CSC申报的各环节中&#xff0c;联系外导获得邀请函是关键步骤。这位联培博士同学的这篇文章&#xff0c;非常详细且真实地记录了申请过程、心理感受&#xff0c;并提出有益的建议&#xff0c;小编特推荐给大家参考。 2024年国家留学基金委公派留学项目即将开始&#xff0c;其…

简单说说redis分布式锁

什么是分布式锁 分布式锁&#xff08;多服务共享锁&#xff09;在分布式的部署环境下&#xff0c;通过锁机制来让多客户端互斥的对共享资源进行访问/操作。 为什么需要分布式锁 在单体应用服务里&#xff0c;不同的客户端操作同一个资源&#xff0c;我们可以通过操作系统提供…

互联网摸鱼日报(2024-02-02)

互联网摸鱼日报(2024-02-02) 博客园新闻 马斯克&#xff1a;Neuralink已探测到神经信号 Linus新年首骂&#xff1a;和谷歌大佬大吵4天&#xff0c;“你的代码就是垃圾” 从零手搓MoE大模型&#xff0c;大神级教程来了 无人出租车深圳中心区收费载客&#xff0c;硅谷同款&am…

【计网·湖科大·思科】实验六 IP数据报的发送和转发流程、默认路由和特定主机路由

&#x1f57a;作者&#xff1a; 主页 我的专栏C语言从0到1探秘C数据结构从0到1探秘Linux &#x1f618;欢迎关注&#xff1a;&#x1f44d;点赞&#x1f64c;收藏✍️留言 &#x1f3c7;码字不易&#xff0c;你的&#x1f44d;点赞&#x1f64c;收藏❤️关注对我真的很重要&…

LLM智能体开发指南

除非你一直生活在岩石下&#xff0c;否则你一定听说过像 Auto-GPT 和 MetaGPT 这样的项目。 这些是社区为使 GPT-4 完全自治而做出的尝试。在其最原始的形式中&#xff0c;代理基本上是文本到任务。你输入一个任务描述&#xff0c;比如“给我做一个贪吃蛇游戏”&#xff0c;并使…

用 Easysearch 帮助大型车企降本增效

最近某头部汽车集团需要针对当前 ES 集群进行优化&#xff0c;背景如下&#xff1a; ES 用于支撑包括核心营销系统、管理支持系统、财务类、IT 基础设施类、研发、自动驾驶等多个重要应用&#xff0c;合计超 50 余套集群&#xff0c;累计数据超 1.5PB 。 本文针对其中一个 ES 集…

升级 FATFS 笔记

最近有朋友希望 AWTK demo 中的 FATFS 能升级到最新版本&#xff0c;在升级的过程中遇到一些小问题&#xff0c;这里做个记录。 1. 升级 FATFS 从官网下载最新代码。更新下面的文件到AWTK项目中&#xff1a; ff.cff.hffsystem.cffunicode.c 下面的文件不需要更新&#xff1…

Compose | UI组件(十二) | Lazy Layout - 列表

文章目录 前言LazyListScope作用域 用来干什么&#xff1f;LazyColumn组件含义&#xff1f;LazyColumn的基本使用LazyColumn Padding设置边距LazyColumn 设置边距 (contentPadding)LazyColumn 为每个子项设置边距 (Arrangement.spacedBy())LazyColumn 根据 rememberLazyListSta…

React从 EMAScript5编程规范到 EMAScript6编程规范过程中的几点改变

在从ECMAScript 5 (ES5)编程规范转换到ECMAScript 6 (ES6)编程规范的过程中&#xff0c;有几个主要的改变&#xff1a; 块级作用域&#xff1a;ES6引入了let和const关键字&#xff0c;允许在块级作用域中声明变量。在ES5中&#xff0c;变量的作用域仅限于函数内部。 箭头函数&…

a-upload——实现上传功能——基础积累

最近在写后台管理系统&#xff0c;遇到了上传功能&#xff0c;之前写过很多次&#xff0c;再次记录一下&#xff1a; <a-upload:file-list"fileList":remove"handleRemove":before-upload"beforeUpload":customRequest"customRequest&qu…