스패닝 트리 예제

2019年8月3日

가장 간단한 그래프에도 많은 스패닝 트리가 포함될 수 있습니다. 예를 들어 다음 그래프: 방향 그래프의 경우 최소 스패닝 트리 문제를 Arborescence 문제라고 하며 Chu-Liu/Edmonds 알고리즘을 사용하여 이차 시간에 해결할 수 있습니다. 스패닝 트리는 그래프 G의 하위 집합으로, 모든 정점이 가능한 최소 모서리 수로 덮여 있습니다. 따라서 스패닝 트리에는 주기가 없으며 연결을 끊을 수 없습니다. 스패닝 트리는 몇 가지 중요한 속성이 있는 그래프의 특수 하위 그래프입니다. 첫째, T가 그래프 G의 스패닝 트리인 경우 T는 G를 스팬해야 하며, 이는 T가 G의 모든 정점을 포함해야 함을 의미합니다. 둘째, T는 G의 하위 그래프여야 합니다. 즉, T에 있는 모든 가장자리는 G. 세 번째 에 표시 되어야 합니다., T의 모든 가장자리도 G에 있는 경우, 다음 GT와 동일 합니다. 그래프 G자체가 트리인 경우 G의 유일한 스패닝 트리는 그 자체입니다. 따라서 v |v|v|θ 정점이 있는 트리는 T(Gtree)=v-2T(G_text{tree})======v |||||||-2})로 정의됩니다. 그래프 G의 모든 가능한 스패닝 트리는 동일한 수의 모서리와 정점을 갖습니다. 일반적으로 모든 그래프 G의 경우 숫자 t(G)는 Kirchhoff의 행렬 트리 정리를 사용하여 그래프에서 파생된 행렬의 결정자로서 다항식 시간으로 계산할 수 있습니다.

[12] 결정 트리를 사용하는 단계를 제외하고 알고리즘의 모든 단계의 런타임은 O(m)입니다. 이 단계의 런타임은 알 수 없지만 최적의 의사 결정 트리보다 더 잘 할 수 있는 알고리즘은 없다는 것을 알고 있습니다. 동일한 무게의 여러 최소 스패닝 나무가있을 수 있습니다; 특히 지정된 그래프의 모든 가장자리 가중치가 동일한 경우 해당 그래프의 모든 스패닝 트리는 최소값입니다. 가중치가 양수이면 주기를 포함하는 하위 그래프가 반드시 더 많은 총 가중치를 갖기 때문에 최소 스패닝 트리는 모든 정점을 연결하는 최소 비용 하위 그래프입니다. 그래프의 단일 스패닝 트리는 깊이 우선 검색 또는 너비 우선 검색을 통해 선형 시간으로 찾을 수 있습니다. 이 두 알고리즘은 임의의 정점 v에서 시작하여 발견한 정점의 인접를 반복하고 나중에 살펴볼 데이터 구조에 각 미탐색 인접를 추가하여 지정된 그래프를 탐색합니다. 이 데이터 구조가 스택(깊이 우선 검색의 경우) 또는 큐(너비 우선 검색의 경우)인지 여부가 다릅니다. 두 경우 모두 루트 정점 v가 아닌 각 정점을 검색된 정점과 연결하여 스패닝 트리를 형성할 수 있습니다. 이 트리는 깊이 우선 검색 트리 또는 생성하는 데 사용되는 그래프 탐색 알고리즘에 따라 너비 우선 검색 트리라고 합니다. [16] 깊이 우선 검색 나무는 19세기 깊이 우선 검색의 발견자의 이름을 따서 명명된 트레모우 나무라는 나무의 클래스의 특별한 경우입니다.

[17] 그래프의 다른 유형은 스패닝 나무의 다른 번호를 가지고있다.

カテゴリー:未分類