Я пытаюсь получить позицию всех тех же элементов из определенной точки, заданной игроком. Элементы должны быть сторонами по сторонам: только столбцы и линии, а не диагональные. Я должен получить позицию большей группы элементов.
Цель состоит в том, чтобы иметь лучший результат, правило:
Итак, на данный момент с моим кодом я могу иметь позиции в одной строке и столбце, но не во всех позициях.
Это мой код:
if(y > 0)
if(grille[x][y] == grille[x][y-1])
unvisited.add(new Coord(x, y-1));
// position dessous
if(y < len-1)
if(grille[x][y] == grille[x][y+1])
unvisited.add(new Coord(x, y+1));
И я не могу найти другие моменты...
Я пытаюсь взять список невидимым, для каждого элемента, который я ищу по строке и столбцу, а затем добавить к посещению и удалить из невидимого, в то время как unvisited не пуст, но я не могу получить хороший результат.
Ошибка выхода:
Exception in thread "main" java.util.ConcurrentModificationException
Надеюсь, вы понимаете, чего я хочу, и извините за мой плохой английский.
Это проблема с четырьмя связями, чтобы указать имя на ней. И вы ищете самый большой регион. Здесь http://en.wikipedia.org/wiki/Connected-component_labeling у вас есть некоторые алгоритмы. NB: m-connectivity и 8-connectivity - с диагоналями, осторожно здесь.