[prev] 36 [next]

Karger's Algorithm

Idea: Repeat random graph contraction several times and take the best cut found

MinCut(G):
|  Input  graph G with V≥2 vertices
|  Output smallest cut found
|
|  min_weight=∞, d=0
|  repeat
|  |  cut=contract(G)
|  |  if weight(cut)<min_weight then
|  |     min_cut=cut, min_weight=weight(cut)
|  |  end if
|  |  d=d+1
|  until d > binomial(V,2)·ln V
|  return min_cut