최대 흐름 알고리즘 (Edmond Karp/Ford-Fulkerson 알고리즘을 사용하여 방향없는 그래프의 가장자리 연결 (즉, 그래프 연결을 끊기 위해 제거 할 최소 가장자리 수)을 찾고 싶습니다.), 최대 흐름 알고리즘을 사용하여 네트워크의 에지 연결 찾기
내가 그래프의 모든 두 노드 사이의 최소 최대 유량을 발견하여이 작업을 수행 할 수 있다는 것을 알고 있지만,이 O를 (초래
| V | 네트워크 흐름의^2) 번호,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;
}
하지만 | V |로 이것을하고 싶습니다. O (| V |^2) 대신에 O (| V |) 시간 동안 만 최대 흐름 알고리즘을 실행합니다.
최대 흐름 감지 알고리즘은 여기에 관심이 없습니다. 그래프가 간접적 일 때 필요하지 않은 것 같습니다.) –
tmyklebu 's 작성자 : 대답 (첫 번째 단락)을 사용하면 두 노드를 모두 계산할 필요가 없습니다. 가능한 모든 w! = v를 반복하여 노드 v를 고치고 최대 흐름을 계산하면 충분합니다. https://en.wikipedia.org/wiki/K-edge-connected_graph#Computational_aspects –
@ Yu-HanLyu : 예; 그게 내가 말한 것과 정확히 일치한다. – tmyklebu