我想编写一个搜索另一个排序序列中的序列的算法
答案 0 :(得分:0)
如果这些数字在 a 和 b 中以相反的顺序出现,那么与两个数字关联的一对行只能交叉。由于您声明第一个列表 - a - 已按顺序排列(按递增顺序),如果我们选择 de 中的数字,则只会在< EM> b'/ em>的
您在评论中说明要选择符合条件的最大元素数。 (我有点困惑,就像在你的例子中,你选择&#34; 5 7&#34;,但你也指出了更长的序列也符合标准。我会假设你做的实际上需要一个最长的序列,例如&#34; 3 4 7&#34;。)所以你需要找到 b 的最大增加子序列。这是一个经过充分研究的问题:http://en.wikipedia.org/wiki/Longest_increasing_subsequence#Efficient_algorithms