請問~如何在4*5的棋盤內算出A-B兩點的最短路徑? (C / C++) |
尚未結案
|
tp61i6c04
一般會員 發表:4 回覆:0 積分:0 註冊:2011-04-23 發送簡訊給我 |
您好~我正在寫棋類遊戲,
需要在4 x 5格的棋盤中判斷從A點至B點無受其他棋子阻擋的最短路徑,並記錄下來。 我目前的想法是迷宮式的解法,依序從每個方向測試,有受阻就倒退,選別的路徑嘗試。 但是這方法感覺很沒效率,因為最後需要選出最短路徑,並且要判斷是否不可能成立(就是無法從A到B點)。 對於無法成立的條件判斷方式,我也還沒想到....................... 需要您的建議,謝謝~~~ ----環境如下---- 例如: 0 1 2 3 4 5 //在4*5棋盤中 0 囗 困 囗 困 囗 B 1 囗 囗 困 囗 囗 困 2 困 囗 困 囗 困 困 3 A 囗 囗 囗 困 困 A:起點。 B:終點。 囗:空格,可行走。 困:有阻擋,不可行走。 result => A->B 需要: 7步 路徑為: A->(3,1)->(3,2)->(3,3)->(2,3)->(1,3)->(1,4)->(0,4)->B |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |