lcs相关内容

有没有什么算法可以解决每个字符具有不同权重的最长公共子序列问题?

我正在寻找一种算法来解决具有以下条件的两个字符串的LCS问题: 每个字符串都由英文字符组成,每个字符都有一个权重。例如: 序列1(S1):带权重的ABBCD[1,2,4,1,3] 序列2(S2):“tbdc”,权重为[7,5,1,2] 假设MW(s, S)被定义为字符串S中的子序列s相对于相关权重的最大权重。最重的公共子序列(HCS)定义为: hcs=argmin(mw( ..
发布时间:2022-07-04 11:32:16 其他开发

所有最长的公共子序列

[注意:我事先搜索过,找不到解决所有子序列LCS问题的建议.] 我在编写“最长公共子序列"问题的解决方案时遇到了麻烦,在该问题中,我返回了两个输入字符串的所有最长公共子序列.我查看了维基百科页面,并尝试在其中实施伪代码,但遇到了我的"backtrackAll"方法出现问题.我相信我在下面正确地计算了LCS矩阵,但是我的"backtrackAll"方法返回了一个空集.关于我在做什么的任何提示吗 ..
发布时间:2020-06-29 19:44:41 Java开发

在符合协议的对象数组中使用diff

我正在尝试使用Composition而不是Inheritance,并且我想在符合给定协议的对象数组上使用diff. 为此,我实施了一个协议并使其符合Equatable: // Playground - noun: a place where people can play import XCPlayground import Foundation protocol Field:Equ ..
发布时间:2020-06-29 19:44:34 其他开发

最长的公共子序列实现-python

我已按照此视频中的指示,实现了最长的常见子序列问题.它只执行第一组代码并产生一个空列表.此实现有什么问题? def lcs_recursive(xlist,ylist): if not xlist or ylist: return [] x,xs,y,ys, = xlist[0],xlist[1:],ylist[0],ylist[1:] if x == ..
发布时间:2020-06-29 19:44:30 Python

这是可以接受的算法吗?

我设计了一种算法来查找最长的公共子序列.这些是步骤: 选择第一个字符串中的第一个字母. 在第二个字符串中查找它,如果找到它,则将该字母添加到 common_subsequence并将其位置存储在index中,否则 比较common_subsequence的长度和lcs的长度 如果值更大,则将其值赋给lcs. 返回第一个字符串并选择下一个字母,然后重复 再次执行上一步,但是这次从第 ..
发布时间:2020-06-29 19:44:24 Python

在ERLANG中获得最长的公共子序列

我是这门ERLANG的新手,我知道一些基础知识.这就像计划,但范围更广.我知道如何创建函数,但是创建具有最长公共子序列的函数时遇到问题. lcs(str1,str2)是一个将接受两个字符串并输出一个整数的函数: lcs(algorithm,logarithm)将输出7,因为可以进行的最长公共子序列是lgrithm,其大小为7. 任何回答都将不胜感激. 解决方案 您在 Ro ..
发布时间:2020-06-29 19:44:17 其他开发

是否有任何算法可以解决每个字符使用不同权重的最长的常见后续问题?

我正在寻找一种算法,该算法可以在以下条件下解决两个字符串的LCS问题: 每个字符串由英文字符组成,每个字符都有权重.例如: 序列1(S1):权重为[1、2、4、1、3]的"ABBCD" 序列2(S2):权重为[7、5、1、2]的"TBDC" 假设MW(s, S)被定义为字符串S中子序列s相对于相关权重的最大权重.最重的公共子序列(HCS)定义为: HCS = argm ..
发布时间:2020-06-29 19:44:08 其他开发

识别通用模式

是否有(容易的)可能性来识别两个字符串共享的共同模式? 这是一个小例子,可以弄清楚我的意思: 我有两个包含字符串的变量.两者都包含相同的模式("ABC")和一些“噪声". a ..
发布时间:2020-06-29 19:44:05 其他开发

R中最长的公共子字符串,找到两个字符串之间不连续的匹配项

关于在R中找到最长的公共子字符串,我有一个问题.在搜索StackOverflow上的几篇文章时,我了解了qualV包.但是,我看到此程序包中的LCS函数实际上是从string1中找到存在于string2中的所有字符,即使它们不是连续的. 说明一下,如果字符串是 string1:" hel lo" string2:" hel 12345lo" 我希望输出为 hel ,但是我得到的结果是“你好" ..
发布时间:2020-06-29 19:44:02 其他开发

Myers diff算法与Hunt-McIlroy算法

最长的常见子序列问题是经典的计算机科学问题,解决该问题的算法版本控制系统和Wiki引擎的根目录。两种基本算法是 Hunt–McIlroy算法,用于创建原始算法版本 diff 和 Myers diff算法,目前由 GNU diff实用程序使用。通过在代表两个字符串或文本文件之间的编辑空间的图形中找到最短路径,似乎两者都或多或少起作用。编辑空间是将一个序列转换为另一个序列所需的插入或删除次数。那么My ..
发布时间:2020-06-03 19:51:34 其他开发

以最少的插入次数将字符串转换为回文字符串

为了找到将给定字符串转换为回文式所需的最小插入次数,我找到了字符串(lcs_string)及其反向的最长公共子序列.因此,要插入的次数是长度(s)-长度(lcs_string) 在知道要插入的数目后,应采用什么方法来找到等效的回文字符串? 例如: 1)azbzczdzez 需要插入的次数:5 回文字符串:azbzcezdzeczbza 虽然同一条字符串可能存在多个回文 ..
发布时间:2020-05-23 21:07:16 其他开发

diff / patch如何工作以及它们有多安全?

关于他们的工作方式,我想知道低级别的工作内容: 什么会触发合并冲突? 这些工具是否也使用上下文来应用修补程序? 它们如何处理实际上不修改源代码行为的更改?例如,交换函数定义的地方。 关于安全性,真相被告知,巨大的Linux内核存储库证明了它们的安全性。但我想知道以下几点: 是否有关于用户应该知道的工具的任何警告/限制? > 是否已经证明算法不会产生错误的结果?如果不是,那么 ..
发布时间:2018-04-26 19:25:47 其他开发

用C语言编写的函数的分析时间复杂度

我正在执行最长公共子序列在C.我想比较采取的解决方案和动态规划版本递归版本执行的时间。我如何才能找到采取在这两个版本的各种投入运行LCS功能的时间?我还可以使用SciPy的绘制在图上这些价值和推断的时间复杂度? 由于提前, 剃须刀 解决方案 有关你问题的第二部分:简单的答案是肯定的,你可以。需要的格式是方便从Python来解析,以获得两个数据集(每个溶液)。是这样的: x和yž 每 ..
发布时间:2016-08-23 10:37:13 C/C++

最长的共同连续子

我知道如何找到两个序列/字符串的LCS,但LCS不征收该子必须是连续的限制。我已经试过如下: 函数LCCS(A,B) 如果则为a.length == 0或b.length个== 0 返回 ”” 可能= [] 如果一个[0] == B [0] possible.push(LCS(A [1 :),B [1:]) possible.push( ..
发布时间:2015-11-30 22:26:20 C/C++

最长公共子printdDiff

有关最长公共子序列算法只是一个简单的问题。 我这样做,你需要生成序列的部分如下: 公众诠释[] [] lcsLength(的char []输入1,的char []输入2){ INT [] []选择=新INT [M] [N]; 的for(int i = 1; I< input1.length;我++){ 对于(INT J = 1; J< input2.l ..
发布时间:2015-11-30 22:10:23 Java开发

两个字符串的所有可能的LCS(最长公共子)

我们可以发现LCS两个字符串(最长公共子)与DP(动态规划)。通过跟踪与DP表我们可以得到的LCS。但是,如果存在多个LCS怎样才能让所有的人? 例如: 字符串1:bcab 字符串2:ABC 这里既有“AB”和“BC”是濒海战斗舰。 解决方案 下面是一个Java的解决方案。为了说明你可以看到我的回答 静态INT ARR [] []; 静态无效LCS(字符串S1,S2字符串){ ..
发布时间:2015-11-30 21:20:44 C/C++