![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
![]() Всем привет!
Решил забабахать свой варгейм. Пишу вообще на GMK8, но использую Дельфяшные библиотеки. И возникла такая проблема: я сталкивался с алгоритмом А' (алгоритмом поиска кратчайшего пути в двухмерном массиве), но я не могу придумать ничего подобного для поля из гексов (шестиугольников). Гексы имеют разную цену прохождания, через некоторые проходить нельзя. При захождении на некоторые гексы идти дальше нельзя. На выходе должны быть координаты всех гексов, через которые пройдёшь по этому маршруту, и координаты всех гексов, до которых вообще можно пройти за определённое количество шагов. [S]Заплачу лолями и нефтью.[/s] (шутка). Если не ты, то кто? (с) Терри Пратчетт Не забывайте ставить плюсы и говорить спасибо! Последний раз редактировалось EvilRussian, 09.02.2011 в 10:35. |
#2
|
||||
|
||||
![]() Как-то не приходилось мне писать код под подобное задание, но представляю я себе это так: У вас от точки старта есть шесть направлений, соответственно шесть новых узлов. Делаем рекурсивный обход всех направлений. Для каждого из направлений считаем количество ходов. По итогам определяем самое короткое. При таком подходе не имеет значение сколько у нас сторон в поле, 6 или 3
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#3
|
||||
|
||||
![]() Спасибо за помощь
![]() Будем пробовать, хотя всё ещё жду предложений. Если не ты, то кто? (с) Терри Пратчетт Не забывайте ставить плюсы и говорить спасибо! |
#4
|
||||
|
||||
![]() Киньте пожалуйста кто-нибудь работающий пример алгоритма А* на Дельфи, а то гугл всякую муру выдаёт.
Заранее спасибо ![]() Если не ты, то кто? (с) Терри Пратчетт Не забывайте ставить плюсы и говорить спасибо! |
#5
|
|||
|
|||
![]() Ищем по ключевым словам "Алгоритм Дейкстры" или "Задача Дейкстры" - поиск кратчайшего пути в графе. Это то, что тебе надо. Один в один.
|
#6
|
||||
|
||||
![]() Поле довольно большое, точка задана точно и заранее. Есть туман войны.
Ты уверен что этот алгоритм именно то, что мне нужно? А* предназначен именно для задач моего типа. Если не ты, то кто? (с) Терри Пратчетт Не забывайте ставить плюсы и говорить спасибо! |
#7
|
||||
|
||||
![]() Дайте уже пример, и я буду счастлив.
Пример А*, естесственно, хотя от хорошего примера алгоритма Дейкстры тоже не откажусь. Если не ты, то кто? (с) Терри Пратчетт Не забывайте ставить плюсы и говорить спасибо! |