Finding maximum flows in undirected graphs seems easier than bipartite matching
Consider an n-vertex, m-edge, undirected graph with maximum flow value v. We give a method to find augmenting paths in such a graph in amortized sub-linear (O(npv)) time per path. This lets us improve the time bound of the classic augmenting path algorithm to O(m+ nv3=2) on simple graphs. The addition of a blocking flow subroutine gives a simple, deterministic O(nm2=3v1=6)-time algorithm. We also use our technique to improve known randomized algorithms, giving O(m+nv5=4)-time and O(m+n11=9v)-time algorithms for capacitated undirected graphs. For simple graphs, in which v n, the last bound is O(n2:2), improving on the best previous bound of O(n2:5), which is also the best known time bound for bipartite matching.