迷路の作成and探索プログラムを作成する
奇数×奇数の迷路を作成 できるだけ難しい迷路を作成する。
探索のときは その迷路の最短ルートをできるだけ早く見つけ出す。
対戦形式で行い 迷路マップを交換し相手の作った迷路の最短ルートを制限時間5分でみつけた方が勝ち
どちらも最短ルートを求められた場合 早く解いたほうが勝ち
どちらも最短ルートが求められなかった場合 早く解いたほうが勝ち

 また作成時は (偶数,偶数)の場所には壁は置かないものとする
 1 2 3 4 5
1壁壁壁壁壁
2S     壁
3壁  壁壁壁
4壁     G
5壁壁壁壁壁
こんな感じ
マスの数はこちらで指定する。
 このプログラムのアルゴリズム教えてください
特に探索側の最速のアルゴリズムは何でしょう? 色々調べましたが
どのアルゴリズムが最速か分からなくて・・・