Znajdowanie połączeń brzegowych sieci za pomocą algorytmu maksymalnego przepływu

Chcę znaleźć łączność krawędzi (tj. Minimalną liczbę krawędzi do usunięcia w celu rozłączenia wykresu) nieukierunkowanego wykresu przy użyciu algorytmów maksymalnego przepływu (algorytmy Edmonda Karpa / Forda-Fulkersona),

Wiem, że mogę wykonać to zadanie, znajdując minimalny maksymalny przepływ między każdym z dwóch węzłów wykresu, ale spowoduje to liczbę O (| V | ^ 2) sieci przepływowych,

int Edge-Connectivity(Graph G){
    int min = infinite;
    for (Vertex u: G.V){
        for (Vertex v: G.V){
           if (u != v){ 
             //create directed graph Guv (a graph with directed edges and source u and sink v)
             //run Edmonds-Karp algorithm to find the maximum flow |f*|
             if (min > |f*|)
               min = |f*|;
           }    
         }
     }
     return min;
}

Ale chciałbym to zrobić za pomocą | V | sieci przepływowe (uruchamiające algorytm maksymalnego przepływu tylko dla czasów O (| V |)) zamiast O (| V | ^ 2) z nich

questionAnswers(1)

yourAnswerToTheQuestion