Waar wordt het Prims-algoritme voor gebruikt?
Waar wordt het Prims-algoritme voor gebruikt?

Video: Waar wordt het Prims-algoritme voor gebruikt?

Video: Waar wordt het Prims-algoritme voor gebruikt?
Video: De algoritmes van Prim en van Kruskal 2024, Mei
Anonim

In de informatica, Prim's (ook bekend als Jarník's) algoritme is een hebzuchtig algoritme die een minimale opspannende boom vindt voor een gewogen ongerichte graaf. Dit betekent dat het een subset van de randen vindt die een boom vormt die elk hoekpunt omvat, waarbij het totale gewicht van alle randen in de boom wordt geminimaliseerd.

Trouwens, waar wordt het algoritme van Kruskal voor gebruikt?

Kruskal's algoritme gebruikt de hebzuchtige benadering om een minimaal opspannende boom te vinden. Kruskal's algoritme behandel elke knoop als een onafhankelijke boom en verbindt de ene met de andere alleen als dit de laagste kosten heeft in vergelijking met alle andere beschikbare opties.

Ten tweede, wat doet Dijkstra's algoritme? Dijkstra's algoritme kan worden gebruikt om het kortste pad van het ene knooppunt in een grafiek naar elk ander knooppunt binnen dezelfde graafgegevensstructuur te bepalen, op voorwaarde dat de knooppunten bereikbaar zijn vanaf het startknooppunt. Dijkstra's algoritme kan worden gebruikt om de kortste weg te vinden.

Ten tweede, wat is het betere Prims- en Kruskal-algoritme?

Het algoritme van Kruskal : presteert beter intypische situaties (dunne grafieken) omdat het eenvoudigere datastructuren gebruikt. Het algoritme van Prim : is aanzienlijk sneller in de limiet als je een erg dichte grafiek hebt met veel meer randen dan hoekpunten.

Wat is de tijdscomplexiteit van het Prims-algoritme?

Het gebruikt dus een enkele array van gehele getallen om een sub-grafiek van een grafiek te definiëren. De tijd complexiteit is O(VlogV +ElogV) = O(ElogV), waardoor het hetzelfde is als Kruskal's salgoritme . Echter, Het algoritme van Prim kan worden verbeterd met behulp van Fibonacci Heaps (vgl. Cormen) naar O(E + logV).

Aanbevolen: