Content deleted Content added
Nils Grimsmo (talk | contribs) |
Nils Grimsmo (talk | contribs) →Sample implementation: More readable |
||
Line 25:
'''def''' edmonds_karp(C, source, sink):
n = len(C)
F = [[0] * n '''for'''
'''while''' True:
path = bfs(C, F, source, sink)
'''if
'''break'''
flow =
'''for'''
flow = min(flow, C[u][v] - F[u][v])
'''for'''
F[u][v] += flow
F[v][u] -= flow
'''return''' sum([F[source][i] '''for''' i '''in''' xrange(n)])
'''def''' bfs(C, F, source, sink):
'''while''' queue:
u = queue.pop(0)
'''for''' v '''in''' xrange(len(C)):
'''if''' C[u][v] - F[u][v] > 0 '''and'''
'''if''' v == sink:
'''return''' None
|