Minimaler Spannbaum SS12

Aus ProgrammingWiki
< AuK
Archivierte Version vom 2012-03-13T09:41:44+00:00. Aktuelle Version

Inhaltsverzeichnis

Wozu?

Minimale Spannbäume (englisch: Minimal Spanning Tree, Abkürzung: MST) können zum lösen vieler Probleme genutzt werden. Ein Problem, dass man mit MST lösen kann ist z.B., dass verbinden mehrerer Inseln mit Brücken. Man möchte, dass alle Inseln miteinander verbunden sind und die Brücken minimale Länge haben und damit minimale Kosten entstehen. Dabei sollen die Inseln so verbunden werden, dass man alle Inseln über die Brücken berreisen kann und keine redundanten Brücken entstehen. Redundante Brücken sind Brücken mit der man eine Insel erreicht, die man auch über einen anderen ggf. längeren Weg hätte erreichen können. Längerer Weg heißt in diesem Fall, dass man über (eine) andere Brücke(n) reisen muss um die Insel zu erreichen.

Allgemeines

Spannbäume

minimale Spannbäume

Im Folgenden sollen eine Einführung in die Begriffe und Grundvorraussetzungen für MST gegeben werden. Die Begriffe werden dabei anhand des Beispiels aus dem vorherigen Punkt erklärt.
Im allgemeinen hat man n-Knoten die man zu einem minimalen Spannbaum verbinden möchte. Wir haben also n-Inseln die miteinander verbunden werden sollen. Dazu benötigt man immer n-1 Kanten (Brücken). Es können nie mehr oder weniger Kanten verwendet werden, weil ein Spannbaum und damit auch ein minimaler Spannbaum diese Menge an Kanten immer hat.

Spezielle Algorithmen

Generischer Algorithmus

Algorithmus von Kruskal

Algorithmus von Prim