최소 가능한 리프 수를 갖는 스패닝 트리를 계산하는 것이 NP 완료 됨은 잘 알려져있다. 그러나 나는 해밀턴 경로 문제에 대한이 문제의 다항식 시간 단축을 이해할 수 없다.해밀턴 경로 문제에 대한 리프 제한 MST 문제의 감소
내 지수 감소 :
if(hamiltonian path exists for whole graph)
min leaves = 1;
return;
else
for each vertex of the graph
if(hamiltonian path exists for this graph after removing the vertex and its incident edges)
min leaves = 2;
return;
continue similarly for the graph deleting 2 vertices, 3 vertices, 4vertices,... until you get a minimum spanning tree with some minimum number of leaves.
그래서, 최악의 경우,이 알고리즘은 해밀턴 경로 문제에
(N choose 1) + (N choose 2) + (N choose 3) + ....(N choose N) = 2^N
통화의 총을 만들 것입니다. 따라서 감소는 기하 급수적입니다.
이 문제에 대한 다항식 시간 감소를 제안하십시오.
'가능한 최소 수의 스패닝 트리를 계산 중 '-> 하? – nhahtdh
이 문제를 해밀턴 경로로 줄이면 NP 완성이라는 것이 증명되지 않습니다. – templatetypedef
다항식 시간 단축은 문제가 NP 완료되었음을 증명합니다. 그러나 이것은 지수 적 시간의 감소와 마찬가지로 내가하고 싶은 감소가 아니라고 확신합니다. 그리고 hamiltonian 경로 문제에 대한이 문제의 다항식 시간 감소를 찾고 있습니다. –