ベルマンフォードアルゴリズム&フロイド・ウォーシャルアルゴリズム

ベルマンフォードアルゴリズム&フロイド・ウォーシャルアルゴリズム

ベルマン・フォードアルゴリズム
説明ベルマン - フォード法

  1. ベルマン - フォード法は、一般的な場合において、単一始点最短経路問題(右側が負である、すなわち、負の右側の存在を可能にダイクストラ法が許可されていない)を解決します。

  2. 結果ベルマン - フォード法はブール値が示しているかどうかがソースS負のサイクルからの図が到達可能。ループがある場合、アルゴリズムは、[V]は、任意の頂点v DISTに図最短経路における点G、ソースSから説明する。この回路が存在する場合、問題は解決策を持っていないことを示し、すなわち、AソースSから点があります最短経路の点は、マイナス無限大(利用可能な無限ループ)になる傾向があります。

参考:
https://blog.csdn.net/yeruby/article/details/38070645

フロイド・ウォーシャルアルゴリズム
ワーシャル - フロイド法が記載されています
ワーシャル - フロイド法は、任意の2点間の最短経路を解決するためのアルゴリズムです。一般図のいずれかで使用することができる、それは負の重み図のエッジに有向グラフを含みます。

片面パスが必ずしも最善の道ではありません。一方的な任意のパスを開始します。2点間の距離は、(無限大に比べて、2点間のエッジを接続していない場合)、すべての右端であると。それが存在する場合、最初の頂点から出発して、順次、それが経路kに既知の経路よりも短い距離を介して存在するかどうかを確認するために、頂点uおよびvの各対について、次に媒体として各頂点をK、および、更新されます。

すなわち:


dist[k](i,j) = min(dist[k-1](i,j),dist[k-1](i,k)+dist[k-1](k,j)。
dist[k](i,j) 为媒介结点为k时从节点i到节点j的最短距离

条件:
ワーシャル-フロイド法は、点の各対の間の最短距離を見つけるために使用されます。これは、アルゴリズムが最適サブ経路を考慮して最適なパスを取得するために、側隣接行列を格納する必要があります。

参考:
https://blog.csdn.net/ideaqjx/article/details/78881044

リリース8元の記事 ウォンの賞賛5 ビュー3409

おすすめ

転載: blog.csdn.net/G1011/article/details/89786442