编辑距离

来源:互联网 发布:js手风琴效果入门思路 编辑:程序博客网 时间:2024/06/10 17:07

给出两个单词word1和word2,计算出将word1 转换为word2的最少操作次数。

你总共三种操作方法:

  • 插入一个字符
  • 删除一个字符
  • 替换一个字符

样例

给出 work1="mart" 和 work2="karma"

class Solution {public:    /*     * @param word1: A string     * @param word2: A string     * @return: The minimum number of steps.     */    int minDistance(string &word1, string &word2) {        // write your code here        int m = word1.size();        int n = word2.size();        if (m == 0) {            return n;        } else if (n == 0) {            return m;        }        vector<vector<int>> dp(m + 1, vector<int>(n + 1, 0));        dp[0][0] = 0;        for (int i = 1; i <= m; i++) {            dp[i][0] = i;        }        for (int j = 1; j <= n; j++) {            dp[0][j] = j;        }        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 {                    dp[i][j] = min(dp[i - 1][j], dp[i][j - 1]) + 1;                    dp[i][j] = min(dp[i - 1][j - 1] + 1, dp[i][j]);                }            }        }        return dp[m][n];    }};




阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 开封府图片 开封府在哪里 开封府在哪 开封府景区 水煮开封府 开封府附近的宾馆 新开封府 开封府门票多少 到开封府混个差事 开封府府尹 开封火车站 开封市普通话水平测试站 开封火车站附近宾馆 开什么厂投资小 开有机肥小厂要多少钱 开一家小店需要多少钱 开小吃店手续 开家沙县小吃要多少钱 开个小吃店如何 开沙县小吃店要多少钱 开一个沙县小吃要多少钱 开什么小吃店好 开小吃店做什么好 开小吃店培训 开小吃店如何选址 开小吃店利润怎么样 小吃店注册 开小吃店需要什么手续和证件 如何开小吃店 开小差 开小差是什么意思 开小差意思 小孩上课开小差怎么办 怎样开杂货店 开杂货店怎么样 如何开个小吃店 开家小吃店怎么样 穿到六零开小店 开创意小店 想开个小店做什么好 创业开小店