Вниз
Скачать: CL | DM;

Определение связанности группы   Найти похожие ветки 

← →
webpauk   (2004-08-04 20:14) [0]

Вопрос, конечно, касается не совсем программирования в Delphi, а скорее теории алгоритмов (или даже теории групп или множеств).
Суть такова:
Есть массив элементов [1..19, 1..19];
Нужно определить в этом массиве связанные группы.
Группа связана тогда, когда одинаковые элементы расположены рядом по вертикали или горизонтали, например:

XX

или

X
X

Группа
X
X
является несвязанной.

Алгоритм следующий:
цикл по строке, цикл по столбцу. Если рядом стоящие элементы одинаковы, новый элемент добавляется в группу.
Столкнулся со следующей проблемой:

1234
1XXXX
2X  X
3X XX

Элемент [3,3] - связан с группой, но из-за того, что цикл еще не дошел до элементов с большим номером [3, 4], получается, что элемент [3,3] несвязан.

Может кто знает, как обойти такую проблему?


← →
webpauk   (2004-08-04 20:15) [1]

Добавлю еще следующее: пытаюсь эту фишку реализовать в игрушке, которую пишу на WinApi+DirectDraw.


← →
webpauk   (2004-08-04 20:40) [2]

Sorry

Группа
X
X
является несвязанной.


← →
webpauk   (2004-08-04 20:41) [3]

Sorry

Группа
X
0X
является несвязанной.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.021 c
3-1090749396
a3a3ello
2004-07-25 13:56
2004.08.22
InterBase -> Firebird


4-1089283866
andrey__
2004-07-08 14:51
2004.08.22
Как принять сообщение в TServiceApplication посланное другим прил


6-1087284001
HydraMarat
2004-06-15 11:20
2004.08.22
TIdTCPServer vs TTcpServer


14-1091519097
DSKalugin
2004-08-03 11:44
2004.08.22
почему следующая фраза вешает ворд ХП???


1-1091113225
denis555
2004-07-29 19:00
2004.08.22
Как прочитать файл в Unicode




   Наверх