利用遞迴解決迷宮問題

2021-10-08 02:35:22 字數 1114 閱讀 2669

/**

* 利用遞迴解決迷宮問題

* @author rocco_l

* */

public

class

migong

for(

int i =

0; i<

8; i++

)map[3]

[1]=

1;map[3]

[2]=

1;//遍歷輸出地圖

for(

int i =

0; i<

8;i++

) system.out.

println()

;}//使用遞迴回溯給小球找路

setway

(map,1,

1);

system.out.

println

("小球走過並標識過的路");

for(

int i =

0; i<

8;i++

) system.out.

println()

;}}/**

* [i,j] 表示從地圖的那個位置開始出發 (1,1)

* map[i][j] 為0 是 表示沒走過 為1時表示牆 為2時表示通路 3表示該點已走過

* @param map 表示地圖

* @param i 從哪個位置開始找

* @param j 從哪個位置開始找

* @return如果找到通路 返回 true 否則返回false

*/public

static

boolean

setway

(int

map,

int i,

int j)

else

elseif(

setway

(map, i, j+1)

)elseif(

setway

(map, i-

1, j)

)elseif(

setway

(map, i, j-1)

)else

}else}}

}

語言利用遞迴演算法解決迷宮問題

上次在 上有人求解乙個迷宮演算法,當時剛好有點時間,就隨便寫了寫,主要是利用遞迴回溯,直到找到正確路徑為止,當然這個演算法還可以稍加修改,也很容易把所有的路徑都計算出來 然後找乙個最短路徑之類的,很容易 begin c include stdafx.h include typedef char bo...

迷宮問題 遞迴解決

建立人 wdl 建立時間 2021 3 21 描述 public class migong 左右全部置為1 for int i 0 i 8 i 設定擋板,1表示 map 3 1 1 map 3 2 1 map 1 2 1 map 2 2 1 輸出地圖 system.out.println 地圖的情況...

遞迴 解決迷宮問題

先用二維陣列模擬出 給部分 賦值1來說明是牆壁 紅色部分 public static void main string args 設定障礙 map 3 1 1 map 3 2 1 map 1 2 1 map 2 2 1 列印 for int i 0 i 10 i system.out.println...