그래프의 최소 스패닝 트리를 찾기 위해 Prim의 알고리즘을 사용하는 경우 어떤 루트 노드가 선택되었는지는 상관이 없습니다. 결과 MST는 상관없이 동일한 가중치를가집니다. 이 올바른지?Prim의 MST : 시작 노드가 중요합니까?
4
A
답변
3
맞습니다. 다른 시작 노드를 선택하면 다른 스패닝 트리를 얻을 수 있지만 항상 최소한의 가중치를 유지합니다.
1
최소값의 고유성 때문입니다.
증명 :
Suppose there are 2 "different" minimum weights W1 and W2
W1 is minimum
W2 is minimum
W1 != W2
This leads to contradiction because
if W1 != W2 then
W1 < W2 -> W1 is minima
or
W1 > W2 -> W2 is minima
Hence if W1 must equal W2.
0
웨이트/트리의 비용없이 노드/정점 개시 동일 할 것이다; 그러나 나무의 모양이 다를 수 있습니다. 입후보를위한 두 개의 가장자리가 현재 최소치가되는 동일한 가중치를 가지면 그 선택은 구현에 따라 다릅니다. 진정한 타이 브레이킹 단계가 없다면 (이것은 거의 같지 않습니다. 많은 가중치 가장자리를 가진 그래프에서 실제 이득이 없으면 O (n)까지 올라갈 수 있습니다.) "가장 먼저 발견 된"것 같습니다. 즉, 노드/버텍스가 추가되고 방문한 순서가 타이 브레이크에 대한 순서이므로 시작 노드/버텍스가 모양에 영향을 미칠 수 있습니다.
두 번째로 성능에 영향을 줄 수 있지만 제어하기가 어렵습니다. 힙 작업의 크기가 커지면서 가능한 한 적은 수의 가장자리를 추가하는 것이 좋으며, 특히 초기에 추가하는 것이 좋습니다. 저조도에 우선 순위를 부여하는 근거로 사용할 수 있습니다. 그러나 이것은 첫 번째 노드/정점을 훨씬 넘어서는 문제는 아닙니다.
TL : DR : 총 비용/중량 : 아니오. 모양 : 여러 MST가있는 경우 예.
관련 문제
- 1. O (| V |^2)의 Prim의 MST 알고리즘
- 2. Prim의 알고리즘 구현
- 3. Boruvka MST 알고리즘
- 4. vbscript로 MST 파일 읽기
- 5. mst 그래프의 비용을 계산하는 방법.
- 6. Prim의 알고리즘을 Kruskal의 알고리즘으로 변환하는 방법은 무엇입니까?
- 7. Java : Prim의 피보나치 더미 포함? (JGraphT)
- 8. 피보나치 힙으로 Prim의 알고리즘을 구현하는 방법은 무엇입니까?
- 9. 부모 노드가 MPI_Barrier에서 멈춤
- 10. xpath 노드가 있는지 찾기
- 11. 노드가 XmlDocument에서 제거되지 않았습니다.
- 12. 어떤 클러스터 노드가 활성화되어야합니까?
- 13. SimpleXML - "노드가 없습니다"
- 14. 찾기 MST는 하나가 PLZ 어떻게 프림 알고리즘을 사용하여 MST 찾기하는 나를 도울 수 프림 알고리즘
- 15. SQL 이식성은 얼마나 중요합니까?
- 16. 파일 확장자가 브라우저에서 중요합니까?
- 17. C# : AsParallel - 주문이 중요합니까?
- 18. 테이블의 열 순서가 중요합니까?
- 19. 왜 바이너리 트리가 중요합니까?
- 20. IDisposable, 정말 중요합니까?
- 21. 외래 키 필드가 중요합니까?
- 22. WebIDL은 무엇이며 왜 중요합니까?
- 23. 프로젝트 이름 지정 : 중요합니까?
- 24. 가상 테이블의 순서가 중요합니까?
- 25. 쿼리의 열 순서가 중요합니까?
- 26. 데이터 유형이 왜 중요합니까?
- 27. catch 블록의 순서가 중요합니까?
- 28. 세션 해시가 중요합니까?
- 29. 연결 수가 중요합니까?
- 30. 유효한 HTML이 페이지로드보다 중요합니까?