최단거리
최근 수정 시각: (5년 전)
측지선에서 넘어옴
1. 개요 [편집]
두 점 사이의 거리 중 가장 짧은 크기를 갖는 것. 크게 이산수학적 최단거리와 기하학적 최단거리로 나뉜다. 일반적으로 최단거리라 함은 후자를 뜻한다.
2. 이산수학에서 [편집]
경우의 수 문제중 유형화된 문제중 하나이다. 일반적으로 여러개의 점들 중에서 어떤점부터 다른 한 점까지의 최단 경로를 묻는 문제로 나온다. 아래의 기하학적 최단거리와 구별하기 위해 '점을 거쳐야 하는 규칙'을 추가한다.
2.1. 풀이 [편집]
이 문제를 푸는 방법은 3가지로 나눌 수 있다.
2.1.1. 1,1,1법칙(노가다) [편집]
가장 귀찮지만 가장 생각은 안 하고 문제를 풀 수 있는 방법이다. 또한 후술할 법칙과는 달리 문제가 바뀌어도 풀이법에 크게 변화가 없는, 범용성이 뛰어나다.
1,1,1 법칙은 다음과 같다.
1,1,1 법칙은 다음과 같다.
(0,1) | (1,1) | (도착) |
(출발) | (1,0) | (2,0) |
이렇게 생긴 지도에서 최단거리의 개수는 다음과 같다.
(0,1)-(1) | (1,1)-(2) | (도착)-(3) |
(출발)-(1) | (1,0)-(1) | (2,0)-(1) |
이렇게, 출발이 있는 행과 열의 포인트들에 1이라고 쓰고 어느 한 점의 최단거리의 개수를 그 점으로 갈 수 있는 점들의 최단거리의 개수의 합으로 하는 것 이다.
지도가 작은 경우, 혹은 장애물이 많은 경우 이 방법이 후술할 방법보다 유용할 수 도 있다. 하지만 대부분의 경우 실수할 확률도 높고 좋지 않은 풀이기 때문에 아래 방법도 알아두자.
지도가 작은 경우, 혹은 장애물이 많은 경우 이 방법이 후술할 방법보다 유용할 수 도 있다. 하지만 대부분의 경우 실수할 확률도 높고 좋지 않은 풀이기 때문에 아래 방법도 알아두자.
2.1.2. 동자순열을 이용한 풀이 [편집]
(0,2) | (1,2) | (2,2) | (도착) |
(0,1) | (1,1) | (2,1) | (3,1) |
(출발) | (1,0) | (2,0) | (3,0) |
위처럼 생긴 지도에서 최단거리의 길이는 5이다. 또한 모든 최단거리는 오른쪽 3번, 위쪽 2번으로 구성되어 있음을 알 수 있다. 다시말해, 오른쪽 3번, 위쪽 2번을 배열해서 만든 배열은 모두 최단거리라는 것 이다. 따라서 동자순열의 원리에 따라 위 예시의 최단경로의 개수는 과 같다.
이 풀이를 이용한 해법은 일반적으로 다음과 같이 정리할 수 있다.
이 풀이를 이용한 해법은 일반적으로 다음과 같이 정리할 수 있다.
크기의 지도에서 최단경로의 개수는 와 같다.
2.1.3. 조합을 이용한 풀이 [편집]
조합을 이용한 풀이는 동자순열을 이용한 풀이와 맥락이 비슷하다. 다만 그 경우의 수를 구하는 방법이 조금 다를 뿐이다.
조합을 이용해 최단경로의 개수를 구하는 방법은 일반적으로 다음과 같다.
조합을 이용해 최단경로의 개수를 구하는 방법은 일반적으로 다음과 같다.
2.2. 크기 [편집]
3. 기하학에서 [편집]
3.1. 유클리드 기하학 [편집]
3.2. 비유클리드 기하학 [편집]
[1] 맨해튼 노름(Manhattan norm)이라고도 한다.
라이선스를 별도로 명시하지 않은 문서는 CC BY-NC-SA 2.0 KR에 따라 이용할 수 있습니다.
기여하신 문서의 저작권은 각 기여자에게 있으며, 각 기여자는 기여하신 부분의 저작권을 갖습니다.
문서의 기여자는 역사 탭에서 확인할 수 있습니다.
접두어의 N: - 나무위키 사용자, R: - 리그베다 위키의 사용자를 뜻합니다.
자세한 사항은 나무위키에서 동일한 문서의 역사를 참고하시기 바랍니다.