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

《P2758 编辑距离》

题目描述

设 A 和 B 是两个字符串。我们要用最少的字符操作次数,将字符串 A 转换为字符串 B。这里所说的字符操作共有三种:

  1. 删除一个字符;
  2. 插入一个字符;
  3. 将一个字符改为另一个字符。

A,B 均只包含小写字母。

输入格式

第一行为字符串 A;第二行为字符串 B;字符串 A,B 的长度均小于 2000。

输出格式

只有一个正整数,为最少字符操作次数。

输入输出样例

输入 #1复制

sfdqxbw
gfdgw

输出 #1复制

4

说明/提示

对于 100% 的数据,1≤∣A∣,∣B∣≤2000。

代码实现:

#include <iostream>
#include <string>
#include <vector>
#include <algorithm>

using namespace std;

int minDistance(string word1, string word2) {
int m = word1.length();
int n = word2.length();

// 创建DP表,dp[i][j]表示将word1[0..i-1]转换为word2[0..j-1]的最少操作数
vector<vector<int > > dp(m + 1, vector<int>(n + 1, 0));

// 初始化边界条件
for (int i = 0; i <= m; i++) {
dp[i][0] = i; // 将word1[0..i-1]转换为空字符串需要i次删除操作
}
for (int j = 0; j <= n; j++) {
dp[0][j] = j; // 将空字符串转换为word2[0..j-1]需要j次插入操作
}

// 填充DP表
for (int i = 1; i <= m; i++) {
for (int j = 1; j <= n; j++) {
if (word1[i-1] == word2[j-1]) {
// 当前字符相同,不需要操作
dp[i][j] = dp[i-1][j-1];
} else {
// 取三种操作的最小值加1,使用传统方式计算最小值
int del = dp[i-1][j];   // 删除操作
int ins = dp[i][j-1];   // 插入操作
int rep = dp[i-1][j-1]; // 替换操作
dp[i][j] = 1 + min(del, min(ins, rep));
}
}
}

return dp[m][n];
}

int main() {
string A, B;
cin >> A >> B;
cout << minDistance(A, B) << endl;
return 0;
}

http://www.dtcms.com/a/434729.html

相关文章:

  • unserialize反序列化漏洞
  • 美工网站设计收费网站中的动态统计图如何做
  • LabVIEW谐波失真分析
  • 秦皇岛市网站制作公司民宿可以在哪些网站做推广
  • 【C++】异常介绍:高级应用与性能优化
  • 大气的网站首页重庆网站建设公司的网站
  • 独立开发者日常:Java大模型流式输出教程
  • 汽车信息安全基石:SHE(安全硬件扩展)深度解析
  • 2025年大模型服务性能深度解析:从清华评测报告看蓝耘元生代MaaS平台的综合实力
  • 网站是哪个公司做的WordPress的网外无法访问
  • 从0死磕全栈之Next.js 流式渲染(Streaming)实战:实现渐进式加载页面,提升用户体验
  • 自己如何创建网站深圳 网站制作
  • 【双指针专题】之复写零
  • 英语学习-Saints039
  • 网站制作费用入什么科目淘宝客优惠券网站建设教程视频
  • CSS field-sizing 让表单「活」起来
  • 【Flutter】抽象类的运用(abstract与implements的实践)
  • 上海建设网站便宜的网站服务器是什么意思
  • 11.UE-游戏逆向-内存中的FUObjectArray(深入理解内存数据)
  • AI智能体在研究分析中的仿真应用:利他主义的悖论——是道德的顶峰,还是精致的利己?
  • SQL语句——高级字符串函数 / 正则表达式 / 子句
  • 西宁网站建设君博首选建设公司的网站首页
  • 【MySQL】数据库事务深度解析:从四大特性到隔离级别的实现逻辑
  • 2021 年真题配套词汇单词笔记(考研真相)
  • 儿童携带背包专利拆解:活动腿弹簧式伸缩卡扣与三模式(背包 / 座椅 / 安全椅)切换机制
  • 一般做一个网站专题页多少钱多商户商城源码下载
  • 利用网站建设平台河南省建设集团有限公司官网
  • **标题:发散创新:探索分布式账本的深度技术****摘要**:本文将深入探讨分布式账本技术,
  • Berachain稳定币使用指南:HONEY与跨链稳定币的协同之道
  • Ethernaut 1-10