Ich schaute auf die Wikipedia entry für Prim-Algorithmus und ich bemerkte, dass seine Zeit Komplexität mit einer Adjazenz-Matrix ist O (V^2) und seine Zeit Komplexität mit einer Heap und Adjazenzliste ist O (E lg (V)) wobei E die Anzahl der Kanten und V die Anzahl der Eckpunkte im Graphen ist.Prims Algorithmus Zeit Komplexität
Da Prims Algorithmus in dichteren Graphen verwendet wird, kann E sich V^2 annähern, aber wenn dies der Fall ist, wird die Zeitkomplexität mit einem Haufen zu O (V^2 lg (V)), was größer ist als O (V ^) 2). Offensichtlich verbessert ein Heap die Leistung, anstatt nur das Array zu durchsuchen, aber die Komplexität der Zeit sagt etwas anderes.
Wie verlangsamt sich der Algorithmus tatsächlich mit einer Verbesserung?
Aber auch wenn E-> V^2 ist, erreicht die Zeitkomplexität O (V^2 + Vlog (V)), was größer ist als O (V^2). – kevmo314
-1 Entschuldigung. Der Kommentar von Kevmo314 erklärt warum. –
O (V^2 + Vlog (V)) == O (V^2) Das sollte nach einem Algorithmus-Kurs offensichtlich sein ... – ephemient