У меня есть приложение, которое выиграет от использования A *; однако по устаревшим причинам мне нужно чтобы он продолжал генерировать точно те же пути, что и раньше, когда есть несколько лучших -путей на выбор.
Например, рассмотрим этот лабиринт
...X FX.S .... S = start F = finish X = wall . = empty space
с направлением -приоритетами Вверх; Верно; Вниз; Слева . Сначала используя ширину -, мы найдем путь DLLLU; однако, используя A *, мы немедленно идем налево и в конечном итоге находим путь LULLD.
Я пытался следить за тем, чтобы всегда расширяться в правильном направлении при разрыве связей; и перезапись указателей PreviousNode
при переходе с более важного направления, но в этом примере ни то, ни другое не работает. Есть ли способ сделать это?