packagecom.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(int i=0; i<8; i++)
system.out.println();
}//使用遞迴回溯找路
//setway(map, 1, 1);
setway2(map, 1, 1);
//輸出新的地圖, 小球走過, 並標識過的地圖
system.out.println("小球走過並標識過的地圖:");
for(int i=0; i<8; i++)
system.out.println();}}
//使用遞迴給小球找路
//map 表示地圖,i j 表示起始位置。找到路返回true , 否則返回false
//map 中0表示沒走,1表示牆,2表示通路,3表示該點已走但不 通
public
static
boolean setway(int map, int i, int
j)
else
else
if(setway(map, i, j+1))
else
if(setway(map, i-1, j))
else
if(setway(map, i, j-1))
else
} else}}
public
static
boolean setway2(int map, int i, int
j)
else
else
if(setway2(map, i, j+1))
else
if(setway2(map, i+1, j))
else
if(setway2(map, i, j-1))
else
} else}}
}
遞迴(recursive) 迷宮回溯問題
建立乙個二維陣列 表示地圖 約定不同的數字表示不同的含義。元素的值,0 表示可以走還沒走過,1 牆,2 表示可以走,3 表示已經走過了,但是是死路。確定乙個策略。下 右 上 左。package chapter18.recursive object migong 左右全部置1 for i 0 unti...
遞迴演算法 迷宮回溯問題
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...
迷宮回溯 遞迴
1.什麼是遞迴?自己呼叫自己,每次傳入的方法引數不同。2.需求 終止條件,和遞迴規律 package com public class mul 設定擋板 map 3 1 1 map 3 2 1 map 1 2 1 map 4 4 1 map 4 5 1 列印地圖 for int a map syst...