В одном интервью мне дали несколько двумерных массивов и попросили идентифицировать и подсчитать одинаковые образцы значений, встречающихся внутри каждого из этих массивов.
Шаблоны могут быть любой формы. Они могут быть квадратами, крестами, могут иметь любую повторяющуюся форму.
Графически данные выглядят примерно так:
ArrayOne
[0][1][1][0]
[0][1][1][0]
ArrayTwo
[1][1][0][0]
[0][1][0][0]
[0][1][0][0]
ArrayThree
[0][1]1][0]
[0][1][1][0]
[0][0][0][0]
[0][0][0][0]
И как результат можно ожидать увидеть:
ArrayOne ArrayThree - "Two occurrencies"
ArrayTwo ArrayTwo - "One occurency"
В нынешнем виде я не вижу, как мы можем повторять такие массивы, чтобы извлекать их шаблоны. Конечно, мы могли бы посчитать количество единиц в каждом массиве, но практически это бесполезно и не даст ответа на вопрос.
Сильно бы оценил конструктивный совет о том, как этого добиться в Java или любом другомдругой широко используемый объектно-ориентированный язык.
РЕДАКТИРОВАТЬ: содержимое массива были обновлены, чтобы устранить путаницу, которая присутствовала в исходном посте