Как реализовать алгоритм поиска пути?

Несколько раз на хабре проскакивали статьи о реализации алгоритмов поиска пути. Мне стало интересно, решил немного прокачаться в js и наваять что-нибудь (делаю все на html/js на div-ах, с js знаком, но больше на уровне jQuery). Но вот проблема — в процессе реализации понимаю, что не знаю как лучше сделать. Было 2 идеи — загонять поле поиска в двумерный массив, а потом проходиться по нему, создавая html вывод, затем поиск/перемещение делать в массиве, изменения опять же отображать в html — получается двойная работа.

Или второй вариант — сразу выводить html блоки со вспомогательной информацией (координаты) и весь поиск сразу производить в html — как-то криво, на мой взгляд.

Подскажите, в какое принять решение, а также буду рад, если посоветуете еще какие-нибудь идеи для практических занятий js.

Спасибо.
  • Вопрос задан
  • 12676 просмотров
Решения вопроса 1
ghaiklor
@ghaiklor
NodeJS TechLead
Вот здесь очень хорошо показан принцип работы поиска путей визуально. И его же можно использовать для поиска путей. В нем уже реализованы такие алгоритмы, как А* и другие.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Suvitruf
@Suvitruf
Java/node.js/game-dev
Я в своё время реализовывал на js волновой алгоритм. Посмотрите, может пригодится. Визуально можно посмотреть как волны строятся. Сам обход в целом являет собой одну рекурсивную функцию.
Ответ написан
overmes
@overmes
Если английский у вас хороший могу накидать ссылок из онлайн курса ИИ университета в Беркли. Очень классно рассказывают, есть A* по шагам:
www.youtube.com/watch?feature=player_embedded&v=g0MJRpquEOk
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы