我需要拼接数组,但如果它们重叠,还需要将A的末尾与B的开头合并。
[1, 2, 4] + [2, 4, 5] -> [1, 2, 4, 5]
[1, 2, 4] + [2, 5, 4] -> [1, 2, 4, 2, 5, 4]
[1, 2, 4] + [1, 2, 4, 5] -> [1, 2, 4, 5]
注意:元素的顺序必须保留,[4, 5]与[5, 4]不相同。
注意2:问题也可以理解为:我们需要A的最短可能扩展,使其输出以B结尾。
当然,我可以遍历第二个数组并逐个比较元素,但我正在寻找一个漂亮的Numpy解决方案。
[1, 2, 4, 2]
和[2, 4, 5]
合并后是否应该返回[1, 2, 4, 2, 4, 5]
?最终结果中仍然存在重复的序列,但是这两个数组只在它们的结尾和开头匹配一个2
。 - 9769953