以前作った迷路作るだけのアプリに、暇だったので最短経路探索機能を付けました。
探索アルゴリズムは以前に Scheme 用に作ったもの。x と y、row と column がこんがらがって移植は結構大変でした。縦横の長さが違うとバグってましたw 元プログラムが手抜きすぎです。探索アルゴリズムはダイクストラ法ですが、迷路が広いと半端無く処理に時間がかかるので注意です。
でも経路情報が出来てしまえば、その後はいろんな探索が瞬時に出来ます。
(↓スクショのときに左端ちょっと切れたけど気にしない。)
オーソドックスに左上から右下。
マウスでクリックすると開始地点(S)、次またクリックすると終端地点(G)を選択でき、
両方を選択すると最短経路にアスタリスクを付けます。
いろんな探索ができますよと。
こんなに遠回りしないとたどり着けませんね。
ちなみに、迷路のようになっていなくても最短経路を探索できます。