1
我有一个动态填充的向量,并且将始终包含一个包含字符和长度的重复序列,但我不确定。例如,载体能包含以下元素:如何查找并返回一个向量内的重复序列
0 1 1 2 3 1 0 1 1 2 3 1 0 1 1 2
,并在该载体的重复序列是:
0 1 1 2 3 1
如何搜索载体和找到这些元素。我想把找到的序列放在一个新的向量中。我首先假定它只需要一个简单的for循环并检查数组中第一个和第二个元素的重复,所以在上面的情况下,当我第二次达到0 1
时,我将退出循环,但问题在于它不能假定前2个元素将处于重复模式,因此
0 1 2 3 2 3 2 3 2 3
可以是向量中的有效元素。有任何想法吗?
也许是指这样的:http://stackoverflow.com/questions/10355103/finding-the-longest-repeated-substring –
http://stackoverflow.com/questions/11090289 /发现,最长的重复序列-IN-A-字符串。这个问题相当于只需稍微调整即可找到最大的模式。在寻找最长模式时,算法会丢弃最近发现的模式,如果它小于新发现的模式,但在您的情况下,如果新的较长模式不与旧模式重叠,您可能需要保留它。 – Ritesh
你想要*最长*重复序列,是吗? – Beta