Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.08.22;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Основная";
Текущий архив: 2004.08.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.039 c
1-1091651420
Some man
2004-08-05 00:30
2004.08.22
CD Write/Read


1-1091713019
DimonNew
2004-08-05 17:36
2004.08.22
ListBox & Multiselect


3-1091185025
46_55_41_44
2004-07-30 14:57
2004.08.22
Хочу создать программно БД на Access 97. Помогите...


4-1089349917
Константин
2004-07-09 09:11
2004.08.22
Как отследить нажатие на TMenuItem


1-1091805745
ghg
2004-08-06 19:22
2004.08.22
размер стека





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский