当前位置: 首页 > news >正文

leetcode 字符串

1143. 最长公共子序列 

. - 力扣(LeetCode)

class Solution {
public:int longestCommonSubsequence(string text1, string text2) {int m=text1.length();int n=text2.length();vector<vector<int>>f(m+1,vector<int>(n+1,0));for(int i=1;i<=m;i++){for(int j=1;j<=n;j++){if(text1[i-1]==text2[j-1])f[i][j] = f[i-1][j-1]+1;elsef[i][j]= max(f[i-1][j], f[i][j-1]);}}return f[m][n];}
};

583. 两个字符串的删除操作

. - 力扣(LeetCode)

方法一:先算出最长公共子序列,在分别(word1.length - f[m][n])+ (word2.length-f[m][n]);

class Solution {
public:int minDistance(string word1, string word2) {int m=word1.length();int n=word2.length();vector<vector<int>> f(m+1,vector<int>(n+1, 0));for(int i=1;i<=m;i++){for(int j=1;j<=n;j++){if(word1[i-1]==word2[j-1])f[i][j] = f[i-1][j-1]+1;elsef[i][j] = max(f[i-1][j], f[i][j-1]);}}return m+n-2*f[m][n];}
};

方法二:直接定义f[i][j]:word1[0;i]和word2[0:j]变成一样的最小删除次数。

class Solution {
public:int minDistance(string word1, string word2) {int m=word1.length();int n=word2.length();vector<vector<int>> f(m+1,vector<int>(n+1,0));for(int i=0;i<=m;i++)f[i][0] = i;for(int j=0;j<=n;j++)f[0][j] = j;for(int i=1;i<=m;i++){for(int j=1;j<=n;j++){if(word1[i-1]==word2[j-1])f[i][j] = f[i-1][j-1];elsef[i][j] = min(f[i-1][j], f[i][j-1])+1;}} return f[m][n];}
};

相关文章:

  • 港科夜闻 | 香港科大与香港科大(广州)合推红鸟跨校园学习计划,共享教学资源,促进港穗学生交流学习...
  • TCP和UDP区别
  • 建筑节能检测题库(单选:378题、多选:103题、判断:188题)
  • TalkingData 是一家专注于提供数据统计和分析解决方案的独立第三方数据智能服务平台
  • AI大模型在运动项目的深度融合和在穿戴设备的实践及未来运动健康技术发展
  • 【漏洞复现】畅捷通T+ keyEdit SQL注入漏洞
  • 机器学习中的监督学习介绍
  • matlab 任意二维图像转点云
  • Windows11和Ubuntu22双系统安装指南
  • C++ virtual public(虚继承类)
  • 从人、机器和环境角度解决智能安全问题
  • 绘制MySQL数据库的实体关系图(ERD)与逻辑模型图
  • 费曼的博士学位论文及下载
  • 前端 CSS 经典:好用的 CSS 选择器
  • 【云】各家云服务器介绍
  • 《用数据讲故事》作者Cole N. Knaflic:消除一切无效的图表
  • classpath对获取配置文件的影响
  • CSS魔法堂:Absolute Positioning就这个样
  • CSS相对定位
  • Docker: 容器互访的三种方式
  • IP路由与转发
  • Mithril.js 入门介绍
  • php面试题 汇集2
  • Python连接Oracle
  • scala基础语法(二)
  • ⭐ Unity 开发bug —— 打包后shader失效或者bug (我这里用Shader做两张图片的合并发现了问题)
  • unity如何实现一个固定宽度的orthagraphic相机
  • Vultr 教程目录
  • -- 查询加强-- 使用如何where子句进行筛选,% _ like的使用
  • 从PHP迁移至Golang - 基础篇
  • 关于Flux,Vuex,Redux的思考
  • 关于springcloud Gateway中的限流
  • 使用SAX解析XML
  • 探索 JS 中的模块化
  • 通过npm或yarn自动生成vue组件
  • 微信开放平台全网发布【失败】的几点排查方法
  • 小程序button引导用户授权
  • 一个JAVA程序员成长之路分享
  • scrapy中间件源码分析及常用中间件大全
  • ​ssh-keyscan命令--Linux命令应用大词典729个命令解读
  • ​第20课 在Android Native开发中加入新的C++类
  • #Datawhale AI夏令营第4期#多模态大模型复盘
  • (Matalb时序预测)PSO-BP粒子群算法优化BP神经网络的多维时序回归预测
  • (附源码)springboot高校宿舍交电费系统 毕业设计031552
  • (区间dp) (经典例题) 石子合并
  • (转)iOS字体
  • (自适应手机端)响应式服装服饰外贸企业网站模板
  • *Django中的Ajax 纯js的书写样式1
  • .gitignore不生效的解决方案
  • .NET 程序如何获取图片的宽高(框架自带多种方法的不同性能)
  • .NET 中的轻量级线程安全
  • .NET/C# 反射的的性能数据,以及高性能开发建议(反射获取 Attribute 和反射调用方法)
  • .NET_WebForm_layui控件使用及与webform联合使用
  • .net开源工作流引擎ccflow表单数据返回值Pop分组模式和表格模式对比
  • @Autowired 与@Resource的区别