迷宫问题
问题描述:有一个迷宫地图,其中地图中有一些不过达的位置(墙壁、障碍)。从一个起点开始,一步一步走到终点,如何找到一条到达的道路呢?
代码实现
实现思路:利用二位数组来模拟迷宫地图,0表示没有走过的点,1表示墙壁,2表示走通的点,3表示走不通的点,按照自定义的寻路策略,遍历寻找路径,如果是死路则标示该路径走不通,回到起点,再重新找一条新路,以此类推,直到走通为止。这种方法又称作为回溯法(递归)。
package main
import "fmt"
// SetWay 寻找出路 i,j表示地图的坐标起点
func SetWay(myMap *[8][8]int, i, j int) bool {
// 设置终点
if myMap[6][6] == 2 {
return true
}
if myMap[i][j] == 0 {
// 假设可以走通
myMap[i