私は数日間Floydのアルゴリズムを実装して、グリッド構造内で最短経路を見つける方法を以下に説明するようにしてみました。どのように私はこのような何かを実装する方法について誰も正しい方向に私を指すことができますか?ありがとう。長方形の障害物を持つ11x11グリッド上で最短経路を見つけるFloydのアルゴリズムを実装する方法は?
入力:
- 開始/終了は、障害物
- 障害の数は、左上の座標と右下の
出力:
- int型
制限事項として
- 障害が
- 開始と終了が矩形障害物 内で設定することはできませんがオーバーラップすることはできませんが
- パスには矩形のエッジに沿って移動することはできますが、移動することはできません
- パスは2つのだけの隣接する頂点間の距離は、私は121x121アレイのための条件を生成するヘルプが必要1
ある
これはこれまで私が行ってきたことです。
for(i=1;i<=n;i++) {
for(j=1;j<=n;j++) {
if(edge exists from i to j) W[i][j] = 1;
// distance=1 if nodes are adjacent
else if (edge does not exist from i to j) W[i][j] = inf;
// distance=inf. if nodes do not meet
else if (i = j) W[i][j] = 0; // distance=0 if i=j
}
}
121x121アレイの条件を生成するのに助けが必要です。これは私がこれまでに得たものです。 'のために(i = 1; iが<= N; iが++)のため { { 場合(エッジが存在するからIへJ) W [i]が[(J = 1、J ++; <= N J) j] = 1; //ノードが隣接している場合は距離= 1 else if(エッジがiからjまで存在しない) W [i] [j] = inf; //距離= inf。ノードが合致しない場合 else if(i = j) W [i] [j] = 0; // i = jなら距離= 0 } } – user1351995
@ user1351995参考:このサイトで元の質問に戻ることができます。私は先に進み、質問にあなたの説明をコピーしました。 – JohnFx