Kafka flash Component 郑州小程序公司 河南普通话考试报名 jq遍历对象 jquery事件绑定 matlab中axis docker查看所有容器 yml文件注释 python中assert python平方函数 java数据库连接 java中的队列 java数组最大值 java语言是什么 java架构 php开发教程 p2pover 狮子狗出装 防沉迷助手 剑三醉猿 计价软件 3d看图软件 经典雅黑 ps去白底 web聊天室 正则表达式数字 vs2008中文版下载 unlocker下载 编写软件 bilibili硬币 优酷app播放器下载 qq空间自动点赞 js继承的几种方式 opencv是什么 SQLite编辑器 dos命令大全及用法 ps旋转图层 vmlinux
当前位置: 首页 > 学习教程  > 编程语言

Leetcode第583题 两个字符串的删除操作 C++解法

2021/1/13 19:17:19 文章标签: 测试文章如有侵权请发送至邮箱809451989@qq.com投诉后文章立即删除

刚开始对这题毫无头绪,想了几分钟,才意识到可以用求最长公共子序列去做。只要求出LCS,size1size2-2*LCS即为结果。 class Solution { public: int longestCommonSubsequence(string text1, string text2) {int dp[text2.size()1],pre,temp,r…

刚开始对这题毫无头绪,想了几分钟,才意识到可以用求最长公共子序列去做。只要求出LCS,size1+size2-2*LCS即为结果。

class Solution {
public:
int longestCommonSubsequence(string text1, string text2) {
    int dp[text2.size()+1],pre,temp,res=0;;
    memset(dp,0,sizeof(dp));
    for(int i=1;i<=text1.size();i++)
    {
        pre=dp[0];
        for(int j=1;j<=text2.size();j++)
        {
            temp=dp[j];
            if(text1[i-1]==text2[j-1])
                dp[j]=pre+1;
            else
                dp[j]=max(dp[j],dp[j-1]);
            res=max(dp[j],res);
            pre=temp;
        }
    }
    return res;
}
    int minDistance(string word1, string word2) {
        return word1.size()+word2.size()-2*longestCommonSubsequence(word1,word2);
    }
};

本文链接: http://www.dtmao.cc/news_show_600005.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?