Dinic's Algorithm Algorithm

Dinic's algorithm or Dinitz's algorithm is a strongly polynomial algorithm for compute the maximal flow in a flow network, conceived in 1970 by Israeli (formerly Soviet) computer scientist Yefim (Chaim) A. Dinitz. The introduction of the concepts of the degree graph and blocking flow enable Dinic's algorithm to achieve its performance. both independently showed that in the Ford – Fulkerson algorithm, if each augmenting path is the shortest one, then the length of the augmenting paths is non-decreasing and the algorithm always terminates. For about 10 years of time after the Ford – Fulkerson algorithm was invented, it was unknown if it could be made to terminate in polynomial time in the general case of irrational edge capacity. At the time he was not aware of the basic facts regarding the Ford – Fulkerson algorithm.

Dinic's Algorithm source code, pseudocode and analysis