![]() |
|
![]() ![]() ![]() |
|
Nike3000 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 4.4.2009 Репутация: нет Всего: нет |
Здравствуйте!
Требуется решить данную задачу: найти min путь передвижения коня по шахматной доске из 1 клетки во 2-ую Не подскажите с чего начать реализацию?? |
|||
|
||||
maxdiver |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 381 Регистрация: 29.1.2008 Где: Саратов Репутация: 16 Всего: 18 |
Построить граф (вершины - клетки) и реализовать на нём обход в ширину.
|
|||
|
||||
Nike3000 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 4.4.2009 Репутация: нет Всего: нет |
Ну я знаю как это сделать руками..Нужно реализовать на компе...
Алгоритм такой: сначала строим вершиный графов (вершины-те клетки куда конь сможет сходить) после надо этот граф както вбить в матрицу, а потом уже там искать мин. путь от клетки1 до 2 Как вот вбить в матрицу граф? клеток 8 на 8 формулы для хода у коня такие: upright(x+1,y-2) upleft(x-1,y-2) leftup(x-2,y-1) leftdown(x-2,y+1) rightup(x+2,y-1) rightdown(x+2,y+1) downleft(x-1,y+2) downright(x+1,y+2) |
|||
|
||||
aram90 |
|
|||
Bug hunter Профиль Группа: Участник Сообщений: 17 Регистрация: 1.12.2008 Где: Yerevan, Armenia Репутация: 1 Всего: 3 |
В принципе, явно построить граф не обьязательно. Задачу можно решить и так - на матрице, оне все же будет задача на графах, но граф мы не построим явно. Я не понял что ты имеешь в виду: "вбить в матрицу граф". Вот код решения:
Это простой поиск в ширину (BFS) в графе, то есть на доске, который использует очередь. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Алгоритмы" | |
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Алгоритмы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |