У меня типичная проблема поиска шаблонов, когда мне нужно определить, где в массиве появляются несколько шаблонов, и выделить их.
ex: ['horse', 'camel', 'horse', 'camel', 'tiger', 'horse', 'camel', 'horse', 'camel']
функция должна вернуть
['horse', 'camel'],
['horse', 'camel', 'horse'],
['camel', 'horse', 'camel'],
['horse', 'camel', 'horse', 'camel']
то есть поиск шаблонов, которые повторяются в массиве, который может стать подмассивом,
Или другой способ определения: -> Найти все подмассивы, которые встречаются более 1 раза в основном массиве.
то есть результирующие массивы должны иметь length > 1
->
[1, 2, 3, 1, 2, 1, 4, 5]
=> [1,2,3]
и [1,4,5]
оба являются подмассивами, но [1,2,3]
является повторяющимся/повторяющимся подмассивом, НЕ [1,4,5]
Поиск подходящего эффективного алгоритма вместо решения зацикливания грубой силы.
[camel, horse]
включено в вывод? - person Bobas_Pett   schedule 20.10.2016[1,2,3,1,2,1,4,5]
странен: как[1,2,3]
, встречающийся ровно один раз, повторяется больше, чем[1,4,5]
? А как насчет[1 2 1 2 1]
- [1 2] и [2 1] не представляет никакой сложности, но считаете ли вы, что[1 2 1]
встречается дважды? - person greybeard   schedule 21.10.2016