Мой 2d лабиринт не работает для множественного выбора

Я знаю, что это может быть простое решение, но это то, что я делаю

$("#map_canvas").html("");
markers = [];

Работает каждый раз для меня.

1
задан Rann Lifshitz 20 January 2019 в 12:49
поделиться

1 ответ

Алгоритм, который вы использовали для решения лабиринта, представляет собой алгоритм DFS , и предоставленное решение не обязательно будет кратчайшим путем к месту назначения.

Конечное условие вашей рекурсии гарантирует, что вы получите только одно решение. То, что вы рассматриваете как несколько решений, на самом деле является одним решением, как можно видеть из следующего печатного примера, основанного на вашем коде (сетка 10 * 10, xx - стены, пункт назначения - (6) (3), каждый лабиринт ячейка заключена в '|', посещенные ячейки - 's):

enter image description here

другой пример:

enter image description here

и еще один:

enter image description here

Пронумерованные шаги в решение показывает, что алгоритм DFS обеспечил очень длинный и извилистый путь к месту назначения.

Итог - вы получаете одно решение, которое намного длиннее, чем вы думаете.

0
ответ дан Rann Lifshitz 20 January 2019 в 12:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: