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

[算法训练] LeetCode Hot100 学习笔记#23

DAY23 2026.05.13

LeetCode1143 最长公共子序列 [多维动态规划]

  1. 确定dp数组以及下标的含义

​ dp[i][j]表示[0,i-1]的nums1和[0,j-1]的nums2,二者的最长公共子序列的长度

  1. 确定递推公式

​ 如果nums1[i-1] == nums2[j-1],那么dp[i][j] = dp[i-1][j-1] + 1

​ 如果nums1[i-1] != nums2[j-1],那么dp[i][j] = Math.max(dp[i-1][j],dp[i][j-1])

  1. dp数组如何初始化

​ 与空字符串比较无公共子序列,故第零行和第零列都初始化为0

  1. 确定遍历顺序

​ 由递推公式dp[i][j]由dp[i-1][j-1]、dp[i-1][j]、dp[i][j-1]得出,故两层for循环都是从1开始顺序遍历到nums1.length/nums2.length

LeetCode72 编辑距离 [多维动态规划]

​ 本题是要求从word1通过增删改的最少操作数得到word2,对word2进行增相当于对word1进行删,对word2进行改相当于对word1进行改,对word2进行删相当于对word1进行增,所以大致思路是类似于LeetCode583 两个字符串的删除操作,细节上有所区别

  1. 确定dp数组以及下标的含义

​ dp[i][j]表示将以i-1为结尾的word1转换成以j-1为结尾的word2的最少操作次数

  1. 确定递推公式

​ 两种情况:

  • word1[i-1] == word2[j-1]时,word1的i-1处字符与word2的j-1处字符对相同化处理无影响,所以可以不考虑这两个元素,dp[i][j] = dp[i-1][j-1]

  • word1[i-1] != word2[j-1]时,要考虑这两个元素,分成三部分(改:w1改成w2、删:w1删w2不删、增:w1不删w2删)模拟,分别进行删减,dp[i][j] = Math.min(dp[i-1][j-1] + 1,Math.min(dp[i-1][j] + 1,dp[i][j-1] + 1))

  1. dp数组如何初始化

​ dp[i][0] = i,word1需要进行i次删除得到空字符串

​ dp[0][j] = j,word2需要进行j次删除得到空字符串

  1. 确定遍历顺序

​ dp[i][j]由dp[i-1][j-1]、dp[i-1][j]、dp[i][j-1]推出,所以是从左到右,从上到下进行遍历

http://www.jsqmd.com/news/811256/

相关文章:

  • 机器学习知识产权保护:从数据到模型的立体防御策略
  • 智能手机如何重塑芯片市场:从基带到SoC的平台化竞争
  • iPhone安全诊断:从异常耗电到系统排查的工程实践指南
  • 3款精选工具:重新定义你的星露谷物语体验
  • Midjourney Mega计划权限体系完全手册(含角色继承漏洞、跨工作区资产迁移失败率TOP3归因分析)
  • WarcraftHelper:免费终极指南,让魔兽争霸III在现代系统上流畅运行
  • Python 爬虫进阶技巧:爬虫日志记录异常捕获与错误复盘
  • 如何快速使用开源字体Poppins:面向设计师的完整免费几何字体指南
  • STM32L4 RTC唤醒中断实战:用CubeIDE配置30秒低功耗定时,实测两种模式差异
  • 极域电子教室破解终极指南:5步重获电脑控制权
  • Linux串口编程避坑指南:termios结构体那些容易配错的标志位(附调试技巧)
  • LTE信令流程:从协议基石到网络交互的实战解析
  • DeepSeek DevOps可观测性升级方案(埋点、链路、指标三位一体,附Prometheus+OpenTelemetry配置速查表)
  • 客观现实源于波函数坍缩:意识内源测量与智能外源投影一体化统一理论(世毫九实验室原创理论)
  • HC32F460_ADC驱动(二)
  • Poppins开源字体:现代几何设计的跨平台无障碍实践终极指南
  • 如何用ComfyUI MixLab插件重塑你的AI创作流程:5个颠覆性应用场景
  • 南洋理工大学、山东大学等机构联合提出的多模态搜索新范式
  • Windows 11 HiDPI光标优化:Capitaine主题安装与深度定制指南
  • 可穿戴示波器的安全隐患与工程安全设计思考
  • 终极图像去重神器:用AntiDupl.NET轻松清理重复图片的完整指南
  • Python 爬虫进阶技巧:爬虫断点续传中断后继续采集数据
  • 从零解构:BUUCTF“吹着贝斯扫二维码”中的隐写与编码链
  • 国防AI采购变革:FAR与OTA合同框架如何重塑商业合作
  • 自我防御体系的本质的庖丁解牛
  • 终极指南:如何在5分钟内完成Koikatu HF Patch安装与优化
  • Python Tkinter怎么实现搜索功能_实时过滤Listbox显示项
  • Ubuntu 22.04 LTS 安装 NVIDIA 驱动保姆级教程:告别 Nouveau 报错,一步到位
  • 2026年选汽车脚垫批发厂家,诚信标杆看这里 - 企业推荐官【官方】
  • IEEE-754单精度浮点数的精度边界与实战陷阱