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

代码随想录算法训练营Day55 ||leetCode 583. 两个字符串的删除操作 || 72. 编辑距离

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

这道题的状态方程比上一题简单一些

初始化如下

class Solution {
public:int minDistance(string word1, string word2) {vector<vector<int>> dp(word1.size() + 1, vector<int>(word2.size() + 1));for (int i = 0; i <= word1.size(); i++) dp[i][0] = i;for (int j = 0; j <= word2.size(); j++) dp[0][j] = j;for (int i = 1; i <= word1.size(); i++) {for (int j = 1; j <= word2.size(); j++) {if (word1[i - 1] == word2[j - 1]) {dp[i][j] = dp[i - 1][j - 1];} else {dp[i][j] = min(dp[i - 1][j] + 1, dp[i][j - 1] + 1);}}}return dp[word1.size()][word2.size()];}
};

72. 编辑距离 

首先确认状态方程

如果第i位与第j位相同,那本次可以不用操作,dp[i][j]=dp[i-1][j-1]

如果不同,则需要增删改的操作,而增和删本质是等效的,对一个字符串删等于对另一个字符串加,所以取dp[i-1][j]和dp[i][j-1]的最小值+1。改的话则是dp[i-1][j-1]+1;取他们的最小值。

初始化则为

class Solution {
public:int minDistance(string word1, string word2) {vector<vector<int>> dp(word1.size() + 1, vector<int>(word2.size() + 1, 0));for (int i = 0; i <= word1.size(); i++) dp[i][0] = i;for (int j = 0; j <= word2.size(); j++) dp[0][j] = j;for (int i = 1; i <= word1.size(); i++) {for (int j = 1; j <= word2.size(); j++) {if (word1[i - 1] == word2[j - 1]) {dp[i][j] = dp[i - 1][j - 1];}else {dp[i][j] = min({dp[i - 1][j - 1], dp[i - 1][j], dp[i][j - 1]}) + 1;}}}return dp[word1.size()][word2.size()];}
};

http://www.lryc.cn/news/323462.html

相关文章:

  • Hive常用函数 之 数值处理
  • 策略模式在项目中实际应用
  • 没有磁盘整列下的多机分布式存储:使用rysnc+多服务器文件/文件夹内容同步
  • SQL:窗口函数之OVER()
  • 嵌入式开发--STM32G431RBTx-定时器中断流水灯
  • 人像抠图HumanSeg——基于大规模电话会议视频数据集的连接感知人像分割
  • Qt 项目使用visual studio 进行开发调试
  • Kotlin 中的惰性集合
  • 2024年React初学者入门路线指南
  • 【Java基础】了解Java安全体系JCA,使用BouncyCastle的ED25519算法生成密钥对、数据签名
  • SQL Server创建存储过程
  • GraphPad Prism 10:一站式数据分析解决方案
  • 前端基础篇-深入了解 Ajax 、Axios
  • 是德科技keysight N1912A双通道功率计
  • 怿星科技Neptune CHT-S测试系统,让智能座舱测试更加高效便捷
  • Vscode初建Vue时几个需要注意的问题
  • 最长不下降子序列
  • QT gridlayout 循环设置组件,表格也通用 已解决
  • 后端前行Vue之路(一):初识Vue
  • C#、.NET版本、Visual Studio版本对应关系及Visual Studio老版本离线包下载地址
  • yarn安装包时报错error Error: certificate has expired
  • 手机可以格式化存储卡吗?格式化以后出现什么情况
  • 亚马逊AWS展示高效纠错的全新量子比特!
  • FEX-Emu在Debian/Ubuntu系统使用
  • docker 不同架构镜像融合问题解决
  • windows_anaconda 安装pytorch
  • IP SSL证书注册流程
  • shentou思路流程
  • 航空实时监控
  • 第十四届蓝桥杯JavaB组省赛真题 - 幸运数字