2011-02-08 3 views
0

THIS은 제가 언급 한 질문입니다. 경로에있는 정류장 수가 사용자에 의해 지정되지 않은 경우 거기에 주어진 응답이 작동하지만 정류장/연결 수가 사용자에 의해 명시 적으로 지정되면이 솔루션이 어떻게 변경됩니까? 따라서 최적의 경로 문제는 아니지만 (여전히 그래도 됨) 여전히 최적의 상태를 유지하면서 경로에 N 개의 정지 점 (노드)이있는 경로를 찾는 것이 더 낫습니다.항공 노선에 관한 이전 질문에 대한 답변

답변

0

이 문제는 불행히도 Hamiltonian path problem의 감소로 NP 하드가되는 것으로 알려져 있습니다. 이것은 정확히 N 개의 멈춤을 만드는 최단 경로를 찾는 문제를 해결할 수 있기를 원한다면 (물론 어떤 사이클도 원하지 않는다고 가정 할 때) 알고리즘을 얻지는 않을 것입니다 그것은 N에서 다항식입니다.

+0

확실히 N에서 지수 함수입니다. N에 상한이있는 경우 O (1)입니다. 아니? –

+0

@Mike Dunvaley- 예,하지만 몇 가지 사항을 명심해야합니다. 첫째, O (1)은 "빠름"을 의미하지 않습니다. N이 클 경우, 알고리즘의 런타임이 비실용적으로 커지는 거대한 상수로 끝날 수 있습니다. 둘째, 알고리즘이 N에서 지수 함수라는 사실은 알고리즘이 고정 N에 대해 O (1)임을 의미하지는 않습니다. 예를 들어, 알고리즘이 O (k^N) 인 경우, k는 그래프의 크기이고, 알고리즘은 N> 3에 대해 엄청나게 비쌉니다. – templatetypedef

+0

동의합니다. 나는 항공사 노선 문제 때문에 3 개 이상의 링크가 정말로 희소하다고 생각했습니다. 따라서 다항식이 아닌 것은 학문의 종류입니다. –