package com.czn.recursion;
*/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();
} boolean setway = setway(map, 1, 1);
system.out.println(setway);
for (int i = 0; i < 8; i++)
system.out.println(); }}
// 使用遞迴回溯來給小球找路
// 說明
// 1. map 表示地圖
// 2. i,j 表示從地圖的哪個位置開始出發 (1,1)
// 3. 如果小球能到 map[6][5] 位置,則說明通路找到.
// 4. 約定: 當map[i][j] 為 0 表示該點沒有走過 當為 1 表示牆 ; 2 表示通路可以走 ; 3 表示該點已經走過,但是走不通
// 5. 在走迷宮時,需要確定乙個策略(方法) 下->右->上->左 , 如果該點走不通,再回溯
//(策略可以自己定義,最後由於定義的策略不同,其最後走出來的路徑也會不同)
這是根據策略「下-右-上-左」得到的路線圖(其起點在[1,1],終點在[6,5])
遞迴(recursive) 迷宮回溯問題
建立乙個二維陣列 表示地圖 約定不同的數字表示不同的含義。元素的值,0 表示可以走還沒走過,1 牆,2 表示可以走,3 表示已經走過了,但是是死路。確定乙個策略。下 右 上 左。package chapter18.recursive object migong 左右全部置1 for i 0 unti...
遞迴與迷宮回溯問題
package com.dai.recursion public class migong 左右全置1 for int i 0 i 8 i 設定擋板 map 3 1 1 map 3 2 1 map 1 2 1 map 2 2 1 輸出地圖 system.out.println 地圖情況 for in...
演算法 迷宮問題 回溯
package datastructure.migong public class test for int i 0 i 8 i map 3 1 1 map 3 2 1 map 3 3 1 setway map,1,1 for int i map system.out.println 判斷當前點能否...