版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
信息工程大学算法设计与分析动态规划—编辑距离问题国家级实验教学示范中心计算机学科组规划教材算法设计与分析Python案例详解微课视频版
设A和B是两个字符串,要用最少的字符操作将A转换为B。字符操作有三种:(1)删除一个字符;(2)插入一个字符;(3)将一个字符改为另一个字符。
将字符串A转换为字符串B所用的最少字符操作数称为字符串A到B的编辑距离。字符串Abanana操作修改修改删除字符串BpandaA转换为B的编辑距离为3编辑距离反映两个字符串的相似程度。最长公共子序列反映两个字符串的相似程度。关注差异性bana
napanda编辑距离是3关注公共部分ba
nanapa
nda最长公共子序列是3字符串Abanana字符串Bpanda1.首先对比最后一个字符,都是a,相等;问题转换为banan和pand的编辑距离问题;2.比较最后一个字符,n和d不等,取min{删除n+bana和pand的编辑距离,插入d+banan和pan的编辑距离,修改n为d+bana和pan的编辑距离}3.…1.找出最优解性质,刻画结构特征
δ(A,B)表示字符串A和B的编辑距离。定义D[i,j]=δ(A[1..i],B[1..j])。D[i,j]=min{D[i-1,j-1]+δ(A[i],B[j]),D[i-1,j]+1,D[i,j-1]+1};D[i,0]=i,i=0~m;D[0,j]=j,j=0~n;2.递归地定义最优值3.以自底向上的方式计算最优值00000000000BjAmB1B2BnA1A2Ai012nm1204.根据计算最优值时得到的信息,构造最优解定义C[i,j]:D[i,j]获得最优值时对应的字符操作。C[i,j]=0:表示A[i]和B[j]相等C[i,j]=1:表示把A[i]修改为B[j]C[i,j]=2:表示删除A[i]C[i,j]=3:表示插入B[j]实例分析:A=“banana”,B=“panda”
j=0j=1pj=2aj=3nj=4dj=5ai=0012345i=1b112345i=2a221234i=3n332123i=4a443222i=5n554333i=6a665443数组D[i,j]
j=0j=1pj=2aj=3nj=4dj=5ai=0033333i=1b21(修改)1111i=2a210(不变)330i=3n2120(不变)33i=4a2102(删除)10i=5n21201(修改)1i=6a210210(不变)实例分析:A=”banana”,B=”panda”数组C[i,j]判断题。编辑距离问题中,最优解可能有多个。A.正确B.错误/*动态规划求解编辑距离,字符串A长度为m,字符串B长度为n*/voideditDistance(char*A,char*B,intm,intn){……/*初始化D和C数组*/for(i=0;i<=m;i++){D[i][0]=i;C[i][0]=2;}for(j=0;j<=n;j++){D[0][j]=j;C[0][j]=3;}
for(i=1;i<=m;i++)for(j=1;j<=n;j++)/*当字符相等时,不做任何操作*/
if(A[i]==B[j]){D[i][j]=D[i-1][j-1];C[i][j]=0;}else{t1=D[i-1][j-1]+1;t2=D[i-1][j]+1;t3=D[i][j-1]+1;if(t1<=t2&&t1<=t3){D[i][j]=t1;C[i][j]=1;}elseif(t2<=t1&&t2<=t3){D[i][j]=t2;C[i][j]=2;}
elseif(t3<=t1&&t3<=t2){D[i][j]=t3;C[i][j]=3;}}}时间复杂度:O(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 运城市2024山西运城学院附属中学招聘10人笔试历年参考题库典型考点附带答案详解(3卷合一)试卷2套
- 山西省2024山西省直事业单位招聘1101人笔试历年参考题库典型考点附带答案详解(3卷合一)试卷2套
- 国家事业单位招聘2024中国科学院动物研究所国家干细胞资源库细胞资源信息主管岗位招聘1人公笔试历年参考题库典型考点附带答案详解(3卷合一)试卷2套
- 2025中国金属矿业经济研究院(五矿产业金融研究院)实习生招聘8人笔试历年难易错考点试卷带答案解析
- 2026北京市建筑设计研究院秋招面笔试题及答案
- 2026年安徽省工程咨询研究院招聘劳务派遣人员备考题库及答案详解1套
- 上海戏剧学院《大学英语》2023-2024学年第一学期期末试卷
- 2026年青海新泉财金投资管理有限公司招聘备考题库有答案详解
- 西南政法大学《形势与政策》2023-2024学年第一学期期末试卷
- 2026年成都农商银行软件开发岗(应用架构方向)社会招聘10人备考题库及答案详解(夺冠系列)
- 江苏省2025年普通高中学业水平合格性考试历史试卷(含答案详解)
- 小学阶段人工智能在激发学生学习动机中的应用研究教学研究课题报告
- 2025年山西大地环境投资控股有限公司社会招聘116人备考题库及完整答案详解一套
- 民爆三大员培训题库及答案
- 小学苏教版科学三年级上册(2024新教材)知识点梳理及2025秋期末测试卷及答案
- T-CESA《人工智能管理能力成熟度模型》
- 2025四川绵阳市江油星乙农业投资集团有限公司招聘26人考试笔试备考试题及答案解析
- 《马克思主义基本原理概论》习题库完整版
- 基本体操课件
- OSAS患者麻醉手术管理要点
- 2026年中国蒽醌行业市场需求分析及趋势预测
评论
0/150
提交评论