0

次の制約を使用して、あるポイントから別のポイントまでトラバースしたい2D配列があります。

  • 水平方向と垂直方向の移動のみが許可されます
  • パスは、配列内のすべての必須ポイントに接続する必要があります
  • アレイには障害物がありません

以下はグラフィック表現です。

+---+---+---+---+---+---+
| 0 | 0 | 1 | 0 | 0 | E |
+---+---+---+---+---+---+
| 0 | 1 | 1 | 0 | 1 | 0 |
+---+---+---+---+---+---+
| 0 | 0 | 0 | 0 | 0 | 0 |
+---+---+---+---+---+---+
| S | 0 | 1 | 0 | 0 | 0 |
+---+---+---+---+---+---+

アルゴリズムは、点 S から開始して、E に到達するための最短経路を見つけ、「1」で示されるすべての点に触れ、水平方向または垂直方向にのみ移動する必要があります。

Javascriptで実装する必要があります(ただし、C#またはJavaでも良いはずです。翻訳できると思います:))

私のニーズに最適なアルゴリズムはどれですか? 私はたくさんグーグルで検索しましたが、似ているが異なるいくつかのダイクストラまたはAスターの実装しか見つかりませんでした(必須のポイントに触れる必要はありません...)

誰かがそのような問題を経験しましたか?

誰か助けてくれませんか?

前もって感謝します

4

1 に答える 1