Всем привет.
Помогите пожалуйста решить проблему.
Нужен алгоритм который находит все дубликаты подряд.
Я использовал алгоритм Мейна-Лоренца,но он находит пары , а мне нужно найти все
К примеру:
['A', 'C', 'A', 'B', 'A', 'B', 'A', 'E', 'E', 'G', 'O', 'C', 'A', 'G', 'O', 'C', 'A', 'G', 'O', 'C', 'A']
Результат Мейна-Лоренца.
[ 7 ... 8] = ['E', 'E']
[ 2 ... 5] = ['A', 'B', 'A', 'B']
[ 3 ... 6] = ['B', 'A', 'B', 'A']
[ 10 ... 17] = ['O', 'C', 'A', 'G', 'O', 'C', 'A', 'G']
[ 13 ... 20] = ['G', 'O', 'C', 'A', 'G', 'O', 'C', 'A']
[ 12 ... 19] = ['A', 'G', 'O', 'C', 'A', 'G', 'O', 'C']
[ 11 ... 18] = ['C', 'A', 'G', 'O', 'C', 'A', 'G', 'O']
[ 9 ... 16] = ['G', 'O', 'C', 'A', 'G', 'O', 'C', 'A']
Ожидамений результат:
[ 7 ... 8] = ['E', 'E']
[ 2 ... 5] = ['A', 'B', 'A', 'B']
[ 3 ... 6] = ['B', 'A', 'B', 'A']
[ 9 ... 20] = ['G', 'O', 'C', 'A', 'G', 'O', 'C', 'A','G', 'O', 'C', 'A']
[ 10 ... 17] = ['O', 'C', 'A', 'G', 'O', 'C', 'A', 'G']
[ 12 ... 19] = ['A', 'G', 'O', 'C', 'A', 'G', 'O', 'C']
[ 11 ... 18] = ['C', 'A', 'G', 'O', 'C', 'A', 'G', 'O']
То есть хотелось бы такой алгоритм как этот, но чтобы искал НЕ тандемы а ВСЕ повторы которые идут подряд.
Спасибо