C++ 两个给定字符串的父字符串
给定2个字符串,我们必须找到长度最小的字符串,这样给定的字符串就是该字符串的子序列。换句话说,我们需要找到一个字符串,这样删除一些字符就会得到给定的字符串。曾经想过暴力和LCS,但都是徒劳的 12345和11234应导致112345 WWA和WWS有一个答案WWASC++ 两个给定字符串的父字符串,c++,string,lcs,subsequence,C++,String,Lcs,Subsequence,给定2个字符串,我们必须找到长度最小的字符串,这样给定的字符串就是该字符串的子序列。换句话说,我们需要找到一个字符串,这样删除一些字符就会得到给定的字符串。曾经想过暴力和LCS,但都是徒劳的 12345和11234应导致112345 WWA和WWS有一个答案WWAS LCS的内存效率很低(DP的),蛮力也很幼稚。我该怎么办?标准库中有一个定义良好的算法,可以满足您的需要 set_union (); 条件是必须对输入范围进行排序。也许您可以使用全局对齐和高失配惩罚,以选择索引。最后,通过从匹配位
LCS的内存效率很低(DP的),蛮力也很幼稚。我该怎么办?标准库中有一个定义良好的算法,可以满足您的需要
set_union ();
条件是必须对输入范围进行排序。也许您可以使用全局对齐和高失配惩罚,以选择索引。最后,通过从匹配位置提取字母,然后从插入的任一字母中提取字母,将对齐合并为“父字符串”,例如:
WW-A
||
WWS-
WWSA
或:
内存是O(nm),但a将其缩小到O(min(n,m))
-12345
||||
11234-
112345