が、私は最大流量のためのC++でEdmonds-Karpを実装しようとしていた、と私は少し違っそれを書いた: を代わりに残留グラフ内のすべてのエッジを通過するのは、私だけで元のグラフ中に存在するエッジを経て隣接リストを使用します。 min flowで残差グラフを更新するとき、私はバックエッジを更新しませんでした。 興味深いことに、自分のコードを実行したときに正しい結果が得られました。そこで私はWi
Edmonds-Karpアルゴリズムは、ソースとシンクtとの間の最短距離が であると、最短経路が増強されるたびに単調増加すると述べている。この仮定で、ソースsとシンクtとの間の距離は、| V |私は、| V |の後にソースSとシンクTの間のパスがなくなることを意味すると思います。 - 1増強。これが真であれば、最大流量を求める複雑さは(| V | - 1)* Eとなるでしょう。 私は間違って上記を
私はJavaでフォード-Fulkersonsアルゴリズムを実装するために学ぼうと、インターネット上でいくつかの助けを見つけましたが、私は、私は一種の理解コード // update residual capacities of the edges and
// reverse edges along the path
for (v=t; v != s; v=parent[v