Angenommen, wir erhalten einen gewichteten Graphen G (V, E).Kürzester Weg in Abwesenheit der gegebenen Kante
Der Graph enthält N Vertices (numeriert von 0 bis N-1) und M Bidirectional Kanten.
Jede Kante (vi, vj)postive Abstand d (dh der Abstand zwischen den beiden Scheitel vivj ist d)
Es ist atmost eine Kante zwischen zwei beliebigen Eckpunkt und zudem gibt es hat keine Selbstschleife (ie.no Kante verbindet einen Scheitelpunkt selbst.)
auch sind wir S die Quelle liegenden Vertex und D der Zielknoten.
lassen Q die Anzahl von Abfragen, die jeweils eine Kante Abfrage enthält e (x, y).
Für jede Abfrage müssen wir den kürzesten Pfad von der Quelle S zu Ziel D finden, vorausgesetzt, dass die Kante (x, y) im ursprünglichen Diagramm nicht vorhanden ist. Wenn kein jeder Pfad von S bis D vorhanden ist, dann müssen wir Nr
Constraints sind hoch 0 < = (N, Q, M) < drucken = 25000
Wie dieses Problem zu lösen Problem effizient?
Bis jetzt, was ich tat umgesetzt wird, um den einfachen Dijakstra Algorithmus.
Für jede Q-Abfrage, bin ich jedes Mal Zuordnung (x, y) zur Unendlichkeit und Dijakstra kürzesten Weg zu finden.
Aber dieser Ansatz wird sehr langsam sein als die Gesamtkomplexität Q (Zeitkomplexität von Dijastra Shortes Pfad) wird *
Beispiel ::
N=6,M=9
S=0 ,D=5
(u,v,cost(u,v))
0 2 4
3 5 8
3 4 1
2 3 1
0 1 1
4 5 1
2 4 5
1 2 1
1 3 3
Total Queries =6
Query edge=(0,1) Answer=7
Query edge=(0,2) Answer=5
Query edge=(1,3) Answer=5
Query edge=(2,3) Answer=6
Query edge=(4,5) Answer=11
Query edge=(3,4) Answer=8
Können Sie bitte erklären, wie man das Min-Cut-Problem "sehr leicht" berechnen kann? – anukul