LC72 Edit Distance
一道字符串题,在没有想到用动态规划前感觉无从下手。注意动态规划的初始化操作。
![](/assets/blank.gif)
![](/assets/blank.gif)
1 class Solution { 2 public: 3 int minDistance(string word1, string word2) { 4 if(word1.size()==0||word2.size()==0) 5 return word1.size()==0?word2.size():word1.size(); 6 int width=word1.size()+1; 7 int height=word2.size()+1; 8 vector<vector<int> > iv(height,vector<int>(width,0)); 9 for(int i=0;i<width;i++) 10 iv[0][i]=i; 11 for(int i=0;i<height;i++) 12 iv[i][0]=i; 13 for(int i=1;i<height;i++) 14 { 15 for(int j=1;j<width;j++) 16 { 17 if(word1[j-1]==word2[i-1]) 18 { 19 iv[i][j]=iv[i-1][j-1]; 20 } 21 else 22 { 23 int tmp=(iv[i-1][j]>iv[i][j-1])?(iv[i][j-1]+1):(iv[i-1][j]+1); 24 iv[i][j]=(tmp>(iv[i-1][j-1]+1))?(iv[i-1][j-1]+1):tmp; 25 } 26 } 27 } 28 return iv[word2.size()][word1.size()]; 29 } 30 };
View Code
转载于:https://www.cnblogs.com/vaecn/p/5252276.html
LC72 Edit Distance相关推荐
- 字符串编辑距离(Edit Distance)
一.问题描述 定义 字符串编辑距离(Edit Distance),是俄罗斯科学家 Vladimir Levenshtein 在 1965 年提出的概念,又称 Levenshtein 距离,是指两个字符 ...
- leetcode Edit Distance
作者:jostree 转载请注明出处 http://www.cnblogs.com/jostree/p/4051082.html 题目链接:leetcode Edit Distance 最短编辑距离, ...
- 详解编辑距离(Edit Distance)及其代码实现
概述 编辑距离(Minimum Edit Distance,MED),由俄罗斯科学家 Vladimir Levenshtein 在1965年提出,也因此而得名 Levenshtein Distance ...
- Edit Distance编辑距离(NM tag)- sam/bam格式解读进阶
sam格式很精炼,几乎包含了比对的所有信息,我们平常用到的信息很少,但特殊情况下,我们会用到一些较为生僻的信息,关于这些信息sam官方文档的介绍比较精简,直接看估计很难看懂. 今天要介绍的是如何通过b ...
- Edit Distance Python源码及支持包的实现
Edit Distance Python源码及支持包的实现 编辑距离 编辑距离 又称Levenshtein距离(莱文斯坦距离也叫做Edit Distance)指两个字串之间,由一个转成另一个所需的最少 ...
- [leetcode]Edit Distance
先给一个例子,两个字符串eeba和abca相似度是多少呢,edit distance是一个很好的度量,定义从字符串a变到字符串b,所需要的最少的操作步骤(插入,删除,更改)为两个字符串之间的编辑距离. ...
- 中石油训练赛 - Edit Distance(思维+构造)
题目描述 A binary string is a non-empty sequence of 0's and 1's, e.g., 010110, 1, 11101, etc. The edit d ...
- mysql 编辑距离 搜索_最小编辑距离(Minimum Edit Distance)
最小编辑距离 1)定义 编辑距离(Minimum Edit Distance,MED),又称Levenshtein距离,是指两个字符串之间,由一个转成另一个所需要的最少编辑操作次数.允许的编辑操作包括 ...
- python 编辑距离_python实现编辑距离edit distance
1.定义理解 edit distance--指两个字符串之间,一个转为另一个的最小编辑次数(方式有:插入/删除/替换) 若edit distance越小,则字符串之间的相似度越高. 例1: 输入: w ...
最新文章
- 高并发编程-Thread_正确关闭线程的三种方式
- androidrunnable使用,Android的:如何停止的Runnable?
- 18.用两个栈实现队列[2StacksToImplementQueue]
- C#LeetCode刷题-数组
- b+树时间复杂度_满二叉树、完全二叉树、二叉搜索树、平衡二叉树
- python文本文件读写的3种方法
- [算法模板]高斯消元
- 基于单片机的超市储物柜设计_毕业设计论-单片机储物柜
- 不用for循环快速合并txt文本文件
- 产品设计:axure的基本使用
- python定义结构体_python中定义结构体的方法
- Chess Queen
- 磁盘管理有磁盘0 磁盘分区1 2 5 6 7 这样 我C盘不够用 这意思是可以把这些磁盘划分到C盘里的意思吗?
- 纯干货:优秀程序员和普通程序员的差距就在这7个关键点
- Java学习----前端3
- 金海佳学C++primer 练习9.18/9.19
- java ee 中文_javaee中的中文乱码处理
- testbed笔记:基类或者成员对象的构造函数调用问题
- 家装无主灯射灯常用色温对比图
- python带你采集桌游、剧本杀游戏店数据信息~