Mögliche Duplizieren:
Kruskal vs PrimKrukshal-Algorithmus oder Prim-Algorithmus, welcher ist besser darin, einen minimalen Spannbaum zu finden?
krukshal-Algorithmus oder Prims Algorithmus, den man besser in minimalen Spannbaum zu finden?
Mögliche Duplizieren:
Kruskal vs PrimKrukshal-Algorithmus oder Prim-Algorithmus, welcher ist besser darin, einen minimalen Spannbaum zu finden?
krukshal-Algorithmus oder Prims Algorithmus, den man besser in minimalen Spannbaum zu finden?
Ich werde einen Punkt zugunsten von Prims Algorithmus hinzufügen, den ich nicht erwähnt habe. Wenn Sie N Punkte und eine Abstandsfunktion d (x, y) für den Abstand zwischen x und y erhalten, ist es einfach, Prims Algorithmus unter Verwendung des Raums O (N) (aber Zeit N^2) zu implementieren.
Beginnen Sie mit einem beliebigen Punkt A und erstellen Sie ein Array der Größe N-1, das Ihnen die Abstände von A zu allen anderen Punkten gibt. Wählen Sie den Punkt B, der der kürzesten Entfernung zugeordnet ist, verknüpfen Sie A und B im Spannbaum und aktualisieren Sie dann die Abstände im Array auf das Minimum der bereits notierten Entfernung bis zu diesem anderen Punkt und den Abstand von B Ot Punkt, notieren Sie, wo die kürzeste Verbindung von B ist und wo von A. Fahren Sie fort.
Ich kenne keinen ähnlichen Weg, Kruskals Algorithmus für einen dichten Graph zu behandeln, der durch eine Abstandsfunktion spezifiziert ist, und für große N kann der Raum O (N^2) leer sein, bevor Ihnen die Zeit ausgeht O (N^2).
@Adnan: Woher weißt du, das ist Hausaufgaben? –
http://StackOverflow.com/Questions/1195872/kruskal-VS-prim – Eric
klingt sehr vertraut zu meiner Algorithmen Analyse Klasse Frage von ein paar Jahren zurück – Adnan