一道字符串题,在没有想到用动态规划前感觉无从下手。注意动态规划的初始化操作。

 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相关推荐

  1. 字符串编辑距离(Edit Distance)

    一.问题描述 定义 字符串编辑距离(Edit Distance),是俄罗斯科学家 Vladimir Levenshtein 在 1965 年提出的概念,又称 Levenshtein 距离,是指两个字符 ...

  2. leetcode Edit Distance

    作者:jostree 转载请注明出处 http://www.cnblogs.com/jostree/p/4051082.html 题目链接:leetcode Edit Distance 最短编辑距离, ...

  3. 详解编辑距离(Edit Distance)及其代码实现

    概述 编辑距离(Minimum Edit Distance,MED),由俄罗斯科学家 Vladimir Levenshtein 在1965年提出,也因此而得名 Levenshtein Distance ...

  4. Edit Distance编辑距离(NM tag)- sam/bam格式解读进阶

    sam格式很精炼,几乎包含了比对的所有信息,我们平常用到的信息很少,但特殊情况下,我们会用到一些较为生僻的信息,关于这些信息sam官方文档的介绍比较精简,直接看估计很难看懂. 今天要介绍的是如何通过b ...

  5. Edit Distance Python源码及支持包的实现

    Edit Distance Python源码及支持包的实现 编辑距离 编辑距离 又称Levenshtein距离(莱文斯坦距离也叫做Edit Distance)指两个字串之间,由一个转成另一个所需的最少 ...

  6. [leetcode]Edit Distance

    先给一个例子,两个字符串eeba和abca相似度是多少呢,edit distance是一个很好的度量,定义从字符串a变到字符串b,所需要的最少的操作步骤(插入,删除,更改)为两个字符串之间的编辑距离. ...

  7. 中石油训练赛 - 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 ...

  8. mysql 编辑距离 搜索_最小编辑距离(Minimum Edit Distance)

    最小编辑距离 1)定义 编辑距离(Minimum Edit Distance,MED),又称Levenshtein距离,是指两个字符串之间,由一个转成另一个所需要的最少编辑操作次数.允许的编辑操作包括 ...

  9. python 编辑距离_python实现编辑距离edit distance

    1.定义理解 edit distance--指两个字符串之间,一个转为另一个的最小编辑次数(方式有:插入/删除/替换) 若edit distance越小,则字符串之间的相似度越高. 例1: 输入: w ...

最新文章

  1. 高并发编程-Thread_正确关闭线程的三种方式
  2. androidrunnable使用,Android的:如何停止的Runnable?
  3. 18.用两个栈实现队列[2StacksToImplementQueue]
  4. C#LeetCode刷题-数组
  5. b+树时间复杂度_满二叉树、完全二叉树、二叉搜索树、平衡二叉树
  6. python文本文件读写的3种方法
  7. [算法模板]高斯消元
  8. 基于单片机的超市储物柜设计_毕业设计论-单片机储物柜
  9. 不用for循环快速合并txt文本文件
  10. 产品设计:axure的基本使用
  11. python定义结构体_python中定义结构体的方法
  12. Chess Queen
  13. 磁盘管理有磁盘0 磁盘分区1 2 5 6 7 这样 我C盘不够用 这意思是可以把这些磁盘划分到C盘里的意思吗?
  14. 纯干货:优秀程序员和普通程序员的差距就在这7个关键点
  15. Java学习----前端3
  16. 金海佳学C++primer 练习9.18/9.19
  17. java ee 中文_javaee中的中文乱码处理
  18. testbed笔记:基类或者成员对象的构造函数调用问题
  19. 家装无主灯射灯常用色温对比图
  20. python带你采集桌游、剧本杀游戏店数据信息~

热门文章

  1. Chosen by god
  2. Django框架实现在线考试系统
  3. 挤奶牛Crowded Cows 洛谷p3088
  4. 大众点评CAT开源监控系统剖析
  5. Qt 设置Widget背景图片并实现透明度的三种方式
  6. 小鸟伏特加怎么用计算机,小鸟伏特加什么意思?网络用语小鸟伏特加什么梗?...
  7. 计算机还原桌面的文件会不会丢失,在用系统还原后会丢失文件吗?谢谢
  8. HTML5 实现动态爱心网页代码
  9. 双官能交联剂点击试剂DBCO-PEG4-DBCO
  10. vue-monoplasty-slide-verify自定义拼图出现位置