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

AcWing 902. 最短编辑距离

视频讲解:

【E07 线性DP 编辑距离】
在这里插入图片描述

在这里插入图片描述
两套代码的字符串存储数组都是从1开始存储的!!!!
硬套公式:

#include<iostream>
#include<algorithm>
const int  N = 1010;
using namespace std;
int n,m;
char a[N],b[N];
int f[N][N];
int main(){cin >> n >> a + 1 >> m >> b + 1;for(int i = 0 ; i <= m ; ++ i) f[0][i] = i;for(int i = 0 ; i <= n ; ++ i) f[i][0] = i;for(int i = 1;i <= n; ++ i){for(int j = 1; j <= m ; ++ j){// f[i][j] = min(f[i - 1][j] , f[i][j - 1] ) + 1;// if(a[i] == b[j]) f[i][j] = min(f[i][j] , f[i - 1][j - 1]);// else f[i][j] = min(f[i - 1][j - 1] + 1,f[i][j]) ;if(a[i]==b[j]) f[i][j] = f[i-1][j-1];else{f[i][j] = min(min(f[i-1][j-1],f[i-1][j]),f[i][j-1])+1;}}}cout << f[n][m];return 0;
}

标准答案

#include<iostream>
#include<algorithm>
const int  N = 1010;
using namespace std;
int n,m;
char a[N],b[N];
int f[N][N];
int main(){cin >> n >> a + 1 >> m >> b + 1;for(int i = 0 ; i <= m ; ++ i) f[0][i] = i;for(int i = 0 ; i <= n ; ++ i) f[i][0] = i;for(int i = 1;i <= n; ++ i){for(int j = 1; j <= m ; ++ j){f[i][j] = min(f[i - 1][j] , f[i][j - 1] ) + 1;if(a[i] == b[j]) f[i][j] = min(f[i][j] , f[i - 1][j - 1]);else f[i][j] = min(f[i - 1][j - 1] + 1,f[i][j]) ;}}cout << f[n][m];return 0;
}

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • VS Code 安装文档
  • MediaGo下载器:专业级功能,轻松应对各种下载需求!
  • 【Qt笔记】QTreeView控件详解
  • 独孤思维:打工,被老板压榨怎么办?
  • AWTK fscript 中的字符串扩展函数
  • CString类的用法以及例子
  • Java_ElasticSearch(ES)——分布式搜索引擎
  • jmeter 响应乱码
  • Django+Vue二手交易平台的设计与实现
  • 智慧警用装备管理系统|支持国产化
  • Java算法之计数排序(Counting Sort)
  • BUUCTF派大星的烦恼
  • 【 html+css 绚丽Loading 】 000029 三元化虚阵
  • Mamba:超越Transformer的新一代神经网络架构
  • 【算法】LRU置换算法
  • IE9 : DOM Exception: INVALID_CHARACTER_ERR (5)
  • [译] React v16.8: 含有Hooks的版本
  • Angular 4.x 动态创建组件
  • eclipse的离线汉化
  • PHP 小技巧
  • React Transition Group -- Transition 组件
  • React-flux杂记
  • swift基础之_对象 实例方法 对象方法。
  • Vue 2.3、2.4 知识点小结
  • 关于springcloud Gateway中的限流
  • 好的网址,关于.net 4.0 ,vs 2010
  • 聚簇索引和非聚簇索引
  • 前端 CSS : 5# 纯 CSS 实现24小时超市
  • 数据结构java版之冒泡排序及优化
  • 小李飞刀:SQL题目刷起来!
  • 以太坊客户端Geth命令参数详解
  • ​LeetCode解法汇总1276. 不浪费原料的汉堡制作方案
  • ​ssh-keyscan命令--Linux命令应用大词典729个命令解读
  • ​油烟净化器电源安全,保障健康餐饮生活
  • #07【面试问题整理】嵌入式软件工程师
  • #565. 查找之大编号
  • #知识分享#笔记#学习方法
  • (附源码)php投票系统 毕业设计 121500
  • (附源码)springboot青少年公共卫生教育平台 毕业设计 643214
  • (附源码)ssm考生评分系统 毕业设计 071114
  • (切换多语言)vantUI+vue-i18n进行国际化配置及新增没有的语言包
  • (三十五)大数据实战——Superset可视化平台搭建
  • (贪心 + 双指针) LeetCode 455. 分发饼干
  • (续)使用Django搭建一个完整的项目(Centos7+Nginx)
  • (转)ObjectiveC 深浅拷贝学习
  • (转)树状数组
  • ./和../以及/和~之间的区别
  • .libPaths()设置包加载目录
  • .net core 外观者设计模式 实现,多种支付选择
  • .NET程序集编辑器/调试器 dnSpy 使用介绍
  • .NET开源、简单、实用的数据库文档生成工具
  • [ IOS ] iOS-控制器View的创建和生命周期
  • [20171102]视图v$session中process字段含义
  • [android学习笔记]学习jni编程
  • [APIO2012] 派遣 dispatching