算法之搜索--最长公共子序列LCS

最长公共子序列(longest common sequence):可以不连续
在这里插入图片描述

最长公共子串(longest common substring):连续
在这里插入图片描述

demo

for (int i = 1;i<=lena;i++){for (int j = 1;j<=lenb;j++){if(a[i-1]==b[j-1]){dp[i][j]=dp[i-1][j-1]+1;}else{dp[i][j]=max(dp[i-1][j],dp[i][j-1]);}}
}

Coincidence

题目描述

Time Limit: 1000 ms
Memory Limit: 256 mb
Find a longest common subsequence of two strings.

输入描述:

First and second line of each input case contain two strings of lowercase character a…z. There are no spaces before, inside or after the strings. Lengths of strings do not exceed 100.

输出描述:

For each case, output k – the length of a longest common subsequence in one line.

代码
#include <bits/stdc++.h>
using namespace std;int dp[105][105];void LCS(string a,string b){int lena = a.length();int lenb = b.length();for(int i = 1;i<=lena;i++){for(int j = 1;j<=lenb;j++){if(a[i-1]==b[j-1]){//注意不是i,jdp[i][j]=dp[i-1][j-1]+1;}else{dp[i][j]=max(dp[i-1][j],dp[i][j-1]);}}}
}int main(){string a,b;while(cin>>a>>b){int lena = a.length();int lenb = b.length();LCS(a,b);cout<<dp[lena][lenb]<<endl;}return 0;
}

最长公共子序列

题目描述

Time Limit: 1000 ms
Memory Limit: 256 mb
给出两个字符串序列,求最长公共子序列(LCS) 。(改编版,原题规定两字符串长度相等,且无重复元素。)

输入描述:

多组数据输入。
在一行分别输入两个字符串。(字符串长度<=1000)

输出描述:

输出两个字符串的最长公共子序列的长度。

代码
#include <bits/stdc++.h>
using namespace std;int dp[1005][1005];void LCS(string a,string b){int lena = a.length();int lenb = b.length();for(int i = 1;i<=lena;i++){for(int j = 1;j<=lenb;j++){if(a[i-1]==b[j-1]){//注意不是i,jdp[i][j]=dp[i-1][j-1]+1;}else{dp[i][j]=max(dp[i-1][j],dp[i][j-1]);}}}
}int main(){string a,b;while(cin>>a>>b){int lena = a.length();int lenb = b.length();LCS(a,b);cout<<dp[lena][lenb]<<endl;}return 0;
}

最长连续公共子序列

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1537871.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

如何扫描试卷去除笔迹?4种方法还原整洁试卷

如何扫描试卷去除笔迹&#xff1f;扫描试卷去除笔迹&#xff0c;作为现代学习管理与评估的革新手段&#xff0c;不仅显著提升了试卷的整洁美观度&#xff0c;更在环保和资源再利用层面发挥了积极作用。它使得试卷的保存、分享与复习变得更加便捷高效&#xff0c;减少了纸质资源…

iptables限制网速

1、使用hashlimit来限速 #从eth0网卡进入INPUT链数据&#xff0c;使用模块hashlimit 限制网速为100kb/s或2mb/s,超过限制的数据包会被DROP。OUTPUT链同理&#xff0c;mode为srcip&#xff0c;有4个mode选项: srcip&#xff08;默认匹配每个源地址IP&#xff0c;配置指定源地址…

Bootstrap 实例(默认的分页)

Bootstrap 支持的分页特性。分页&#xff08;Pagination&#xff09;&#xff0c;是一种无序列表&#xff0c;Bootstrap 像处理其他界面元素一样处理分页。 分页&#xff08;Pagination&#xff09; 下表列出了 Bootstrap 提供的处理分页的 class。 <!DOCTYPE html> &l…

C++速通LeetCode中等第1题-字母异位词分组

思路要点&#xff1a;对字符串排序&#xff0c;排序结果存放在map的key中&#xff0c;排序结果相同的字符串存放到map的value中 。 class Solution { public:string keys;vector<vector<string>> groupAnagrams(vector<string>& strs) {vector<vecto…

新手学习Python第九天-新手笔记 速学中

现在是北京时间06&#xff1a;55,早上06&#xff1a;44到达实验室&#xff0c;开始学习。对&#xff0c;昨天陪室友考教师资格证了&#xff0c;溜溜达达一天很舒服&#xff0c;两周一次的放松感。这几天和未来几天的压力真的很大&#xff0c;有很多要去学习的&#xff0c;比如C…

html实现好看的多种风格手风琴折叠菜单效果合集(附源码)

文章目录 1.设计来源1.1 风格1 -图文结合手风琴1.2 风格2 - 纯图片手风琴1.3 风格3 - 导航手风琴1.4 风格4 - 双图手风琴1.5 风格5 - 综合手风琴1.6 风格6 - 简描手风琴1.7 风格7 - 功能手风琴1.8 风格8 - 全屏手风琴1.9 风格9 - 全屏灵活手风琴 2.效果和源码2.1 动态效果2.2 源…

【系统方案】智慧园区数字园区整体解决全套方案(PPT,Word原件等)

智慧园区建设要点可归纳为以下几点&#xff1a; 基础设施建设&#xff1a;构建高速、稳定的网络基础设施&#xff0c;部署物联网设备&#xff0c;实现园区内设备的互联互通&#xff0c;为智慧化应用提供基础支撑。 数据平台建设&#xff1a;建立统一的数据中心&#xff0c;整合…

基于51单片机的红外测速系统(简单项目)

基于51单片机的红外测速系统使用STC89C52RC作为系统&#xff0c;利用L298N作为电机驱动器件&#xff0c;使用TM1638驱动数码管继续显示&#xff0c;程序运行&#xff0c;电机转动&#xff0c;对射式红外测量编码盘产生的下降沿&#xff0c;一般而言&#xff0c;在指定时间内获得…

【pytorch学习笔记,利用Anaconda安装pytorch和paddle深度学习环境+pycharm安装---免额外安装CUDA和cudnn】

作者链接: link 一、安装pytorch环境 1.打开打开anaconda的终端后 conda env list然后创建一个名字叫pytorch&#xff0c;python是3.8版本的环境 conda create -n pytorch python3.8再次看环境 conda env list# conda environments: #显示如下环境 base …

基于springboot的慕课学习平台设计与实现

博主介绍&#xff1a;专注于Java .net php phython 小程序 等诸多技术领域和毕业项目实战、企业信息化系统建设&#xff0c;从业十五余年开发设计教学工作 ☆☆☆ 精彩专栏推荐订阅☆☆☆☆☆不然下次找不到哟 我的博客空间发布了1000毕设题目 方便大家学习使用 感兴趣的可以…

【STM32 ST-LINK Utility】工具使用和如何编译HEX和BIN文件

【STM32 ST-LINK Utility】工具使用和如何编译HEX和BIN文件 一、STM32 ST-LINK UtilitySTM32 ST-LINK Utility简介功能概述&#xff1a; STM32 ST-LINK Utility作用使用场景&#xff1a; 二、KEIL生成HEX和BIN文件1. 生成HEX文件2. 生成BIN文件 三、STM32 ST-LINK Utility烧录1…

pywebview 中错误使用async

错误代码 正确示例 完整代码 前端代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>pywebview …

分布式事务学习笔记(四)微服务实现Stata AT模式、Stata Saga模式介绍

文章目录 前言4 Seata AT 模式4.1 实现原理4.2 脏写问题4.3 微服务实现AT模式4.3.1 新建数据库表4.3.2 修改配置文件4.3.3 重启服务并测试 5 Seata Saga 模式 前言 分布式事务学习笔记(一)分布式事务问题、CAP定理、BASE理论、Seata 分布式事务学习笔记(二)Seata架构、TC服务器…

小间距LED显示屏的技术原理分析

在现代显示技术领域&#xff0c;小间距LED显示屏以其卓越的显示效果和灵活的应用场景&#xff0c;逐渐成为市场的新宠。本文将深入探讨小间距LED显示屏的技术原理&#xff0c;分析其在显示领域的应用优势。 A、小间距LED显示屏的基本概念 小间距LED显示屏是指LED灯珠之间的间距…

大模型微调基本概念指北,零基础入门到精通,收藏这一篇就够了

本文主要分享一下大模型微调相关的基本概念&#xff0c;包括大模型(GPT)训练流程、微调(SFT)方法&分类&框架&最佳实践、强化学习(RLHF)&#xff0c;最后则是分享了如何训练垂直领域大模型。 本文是参考网上博客、文章后进行总结而成&#xff0c;旨在让刚接触大模型…

03-Mac系统PyCharm主题设置

目录 1. 打开PyCharm窗口 2. Mac左上角点击PyCharm&#xff0c;点击Settings 3. 点击第一项Appearance& Behavior 4. 点击Appearance 5. 找到Theme进行设置 1. 打开PyCharm窗口 2. Mac左上角点击PyCharm&#xff0c;点击Settings 3. 点击第一项Appearance& Behavi…

软考高级:嵌入式系统:片级初始化、板级初始化、系统级初始化 AI 解读

生活化例子 想象一下你要启动一辆车&#xff0c;这个过程就可以类比成嵌入式系统的初始化过程。 片级初始化&#xff1a;相当于启动汽车引擎&#xff0c;确保发动机、变速箱这些核心部件能够正常工作。板级初始化&#xff1a;就像检查车子的电子系统、灯光、车窗是否正常&am…

整流电路的有源逆变工作状态

目录 1. 逆变的概念 2. 有源逆变的条件 3. 电流电路的概念 4. 产生逆变的条件 5. 三相桥式全控整流电路的有源逆变工作状态 6. 逆变角的概念 7. 逆变失败的原因 8. 最小逆变角的限制 整流电路的有源逆变状态是指通过控制整流器&#xff0c;使其将直流电源的能量反向送回…

如何写出军工级的代码?

编写军工级代码意味着要达到极高的可靠性、安全性、可维护性和效率&#xff0c;这通常涉及到严格的标准和流程。以下是一些关键点&#xff0c;帮助你编写军工级的代码&#xff1a; 1. 遵循严格的开发流程 军工项目通常需要遵循特定的软件开发标准&#xff0c;例如&#xff1a;…

农产品自主供销小程序--论文源码调试讲解

第二章 开发技术介绍 此次管理系统的关键技术和架构由B/S结构、java和mysql数据库&#xff0c;是本系统的关键开发技术&#xff0c;对系统的整体、数据库、功能模块、系统页面以及系统程序等设计进行了详细的研究与规划。 2.1 系统开发平台 在该在线农产品自主供销小程序中&a…