Я стою исправлено.

ужно обнаружить наличие нескольких блоков столбчатых данных, учитывая только их заголовки. О данных ничего не известно, кроме заголовочных слов, которые различны для каждого набора данных.

Важно отметить, что заранее неизвестно, сколько слов содержится в каждом блоке и, следовательно, сколько блоков есть.

Не менее важно, что список слов всегда относительно короткий - менее 20.

Итак, учитывая список или массив заголовочных слов, таких как:

Opt
Object
Type
Opt
Object
Type
Opt
Object
Type

Какой способ обработки наиболее эффективен, чтобы определить, что он полностью состоит из повторяющейся последовательности:

Opt
Object
Type

Это должно быть точное совпадение, поэтому моя первая мысль состоит в том, чтобы искать [1+] и искать совпадения с [0], называя их индексами n, m, ... Тогда, если они равноудалены, проверьте [1] == [n + 1] == [m + 1] и [2] == [n + 2] == [m + 2] и т. Д.

РЕДАКТИРОВАТЬ: он должен работать для наборов слов, где некоторые слова сами повторяются в блоке, поэтому

Opt
Opt
Object
Opt
Opt
Object

это набор из 2

Opt
Opt
Object

Ответы на вопрос(4)

Ваш ответ на вопрос