미로에 여러 솔루션이 있는 경우 솔버는 처음부터 끝까지 가장 짧은 경로를 찾으려고 할 수 있습니다. 가장 짧은 경로를 찾는 몇 가지 알고리즘이 있으며, 대부분은 그래프 이론에서 나오게 됩니다. 이러한 알고리즘 중 하나는 너비 우선 검색을 구현하여 가장 짧은 경로를 찾는 반면, 다른 알고리즘인 A* 알고리즘은 휴리스틱 기법을 사용합니다. 너비 우선 검색 알고리즘은 큐를 사용하여 시작부터 완료에 도달할 때까지 거리 순서가 증가하는 셀을 방문합니다. 방문한 각 셀은 시작과의 거리 또는 시작에 가까운 인접 셀의 거리를 추적하여 큐에 추가해야 합니다. 완료 위치가 발견되면 셀의 경로를 따라 가장 짧은 경로인 시작 경로로 이동합니다. 가장 간단한 형태의 폭 우선 검색에는 가중치 기반 그래프에서 가장 짧은 경로를 찾는 것과 같은 제한이 있습니다. 루프가 없는 미로는 “단순히 연결”, 또는 “완벽한”미로로 알려져 있으며 그래프 이론의 나무와 동일합니다. 따라서 많은 미로 해결 알고리즘은 그래프 이론과 밀접한 관련이 있습니다. 직관적으로 미로의 경로를 적절한 방법으로 당기고 뻗으면 나무와 비슷하게 만들 수 있습니다.

[1] 이 게시물은 C#을 사용하여 unity2d에서 서약 알고리즘을 구현하는 것에 관한 것이며, 우리가 가는 대로 코드 예제를 포함할 것입니다. 이 게시물을 작성하면서 코드를 작성하고 프로세스를 진행할 것이므로, 제가 작성하는 것처럼 작성하겠습니다. 프로세스가 작동하는지 살펴보겠습니다. 그렇지 않은 경우, 나는 다음에 새로운 무언가를 시도 할 것이다. 이들 중 어느 것이든 다른 것들을 크게 변경하지 않고도 변경할 수 있어야 합니다. 예를 들어 검색 알고리즘을 개선하라는 메시지가 표시됩니다. 현재 문제에서 약간 수정된 문제로 전환하는 용이성은 프로그램 설계의 실제 메트릭입니다. 포커스: 포커스 클래스는 모호하지만 미로 생성은 벽 가산기와 통로 조각가의 두 가지 일반적인 유형으로 나눌 수 있음을 보여줍니다. 이는 일반적으로 관찰 할 때 시각적 인 차이와 는 달리 생성 할 때 알고리즘 차이일 뿐이지만 여전히 고려하는 것이 유용합니다. 동일한 미로는 종종 두 가지 방법으로 생성 될 수있다 : 미로 라우팅 알고리즘 [10]은 미로의 두 위치 사이의 방법을 찾기 위해 낮은 오버 헤드 방법입니다. 이 알고리즘은 처음에 칩 멀티프로세서(CMP) 도메인에 대해 제안되었으며 모든 그리드 기반 미로에서 작동하도록 보장합니다.

알고리즘은 그리드(미로)의 두 위치 사이의 경로를 찾는 것 외에도 소스와 대상 사이에 경로가 없는 경우 감지할 수 있습니다. 또한, 알고리즘은 미로 크기에 관계없이 고정 메모리 복잡성미로 미로에 대한 사전 지식이없는 내부 여행자에 의해 사용되어야한다; 경로를 찾고 연결할 수 없는 위치를 감지하기 위해 총 4개의 변수가 필요합니다.