Нахождение смежных блоков в двумерном массиве - PullRequest
1 голос
/ 09 июня 2011

Скажем, у вас есть массив в виде:

[ 
  [2, 2, 3, 4],
  [2, 3, 5, 5],
  [2, 2, 2, 5],
  [3, 2, 2, 4],
]

и вы хотите найти координаты смежных блоков, в данном случае:

[
  # the 2s:
  [(0,0), (0,1), (1,0), (2,0), (2,1), (2,2), (3,1), (3,2)],
  # and the 5s:
  [(1,2), (1,3), (2,3)]
]

как бы вы это сделали?

1 Ответ

3 голосов
/ 09 июня 2011

Вы можете попробовать алгоритм заливки для каждой ячейки.(Примечание: помечайте уже обработанные ячейки также во время заливки, чтобы не учитывать их несколько раз)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...