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

Day45 >> 115、不同的子序列 + 583. 两个字符串的删除操作 + 72. 编辑距离

代码随想录-动态规划Part12

115.不同的子序列

class Solution { public int numDistinct(String s, String t) { int[][] dp = new int[s.length() + 1][t.length() + 1]; for (int i = 0; i < s.length() + 1; i++) { dp[i][0] = 1; } for (int i = 1; i < s.length() + 1; i++) { for (int j = 1; j < t.length() + 1; j++) { if (s.charAt(i - 1) == t.charAt(j - 1)) { dp[i][j] = dp[i - 1][j - 1] + dp[i - 1][j]; }else{ dp[i][j] = dp[i - 1][j]; } } } return dp[s.length()][t.length()]; } }

583. 两个字符串的删除操作

class Solution { public int minDistance(String word1, String word2) { char[] char1 = word1.toCharArray(); char[] char2 = word2.toCharArray(); int len1 = char1.length; int len2 = char2.length; int dp[][] = new int [len1 + 1][len2 + 1]; for(int i = 1; i <= len1; i++){ for(int j = 1; j <= len2; j++){ if(char1[i - 1] == char2[j - 1]) dp[i][j] = dp[i - 1][j - 1] + 1; else dp[i][j] = Math.max(dp[i - 1][j], dp[i][j - 1]); } } return len1 + len2 - (2 * dp[len1][len2]); } }

72. 编辑距离

class Solution { public int minDistance(String word1, String word2) { int m = word1.length(); int n = word2.length(); int[][] dp = new int[m + 1][n + 1]; // 初始化 for (int i = 1; i <= m; i++) { dp[i][0] = i; } for (int j = 1; j <= n; j++) { dp[0][j] = j; } for (int i = 1; i <= m; i++) { for (int j = 1; j <= n; j++) { if (word1.charAt(i - 1) == word2.charAt(j - 1)) { dp[i][j] = dp[i - 1][j - 1]; } else { dp[i][j] = Math.min(Math.min(dp[i - 1][j - 1], dp[i][j - 1]), dp[i - 1][j]) + 1; } } } return dp[m][n]; } }
http://www.jsqmd.com/news/263182/

相关文章:

  • Vim中复制内容到系统剪贴板
  • Spring Cloud 集成 Nacos,全面的配置中心与服务发现解决方案
  • spring boot中异常日志输出:log.error(“【文件上传】失败,{},{}“, endpoint, method, e);最后的e是异常对象,会输出堆栈信息
  • 深入解析:JMeter的基本使用与性能测试
  • 科研 / 工业采购必看:国产高端仪器品牌 + 上市公司实力盘点 - 品牌推荐大师1
  • 禁止win11自动更新,禁止windows更新的工具软件方法教程攻略
  • 从城市运管到灾害救援:2026年好用的应急调度系统场景推荐 - 速递信息
  • 基于多鱼眼的视觉SLAM系统(毕业论文)
  • Nginx http模块配置详解
  • Nginx http模块配置详解
  • Polar靶场web 随写笔记 - 指南
  • Nginx 虚拟主机 Server块配置详细解读
  • 变量的使用
  • ROS1 noetic 中将 Unitree G1 基于 Gazebo/RViz 关节联动【使用一个launch文件启动】
  • Java Web 核心全解析 - 实践
  • 写论文软件哪个好?实测揭秘!宏智树 AI 凭 “真研究” 实力出圈
  • 什么是 CMS 站群系统?以及它在百度 SEO 中的真实作用
  • 5 款 AI 写论文哪个好?实测宏智树 AI:毕业论文的全能型学术助手
  • 2026年周边优秀的汽车维修经销商怎么选择,客车轮胎/汽车保养/货车轮胎/轿车保养/汽车检测,汽车维修批发哪个好 - 品牌推荐师
  • CMS站群系统在实际项目中解决的,往往不是“建站问题”
  • 2026最新最全Java 面试题大全(整理版)2000+ 面试题附答案详解
  • 2026年市场有名的包衣机定做厂家怎么选择,高效湿法制粒机/离心造粒包衣机/微孔高效包衣机,包衣机供货商口碑推荐 - 品牌推荐师
  • 全网最全9个AI论文工具,专科生轻松搞定论文写作!
  • 租车新选择:2026年口碑爆棚的租车公司推荐,租赁/自驾租车/租车/会展包车/包车/企业租车/跨境包车,租车公司选哪家 - 品牌推荐师
  • web入门91-100
  • Splay/LCT
  • 基于可视分析技术的深度学习模型构建与优化【附源码】
  • 移除链表元素-day03
  • 制图不用愁!CAXA 电子图板 2025 最新版本国标图库一键调用
  • 基于深度学习的信道编码识别与扰码分析【附完整代码】