import java.util.Scanner;
public class Maze { private MazeNode[][] mazenode; private int row ;//行 private int colum;//列 public Maze(){ } public void innode(){//添加迷宫路径; Scanner scanner=new Scanner(System.in); System.out.println("请输入迷宫行数和列数"); row=scanner.nextInt()+2;//为后面加围墙 colum=scanner.nextInt()+2; System.out.println("请输入迷宫路径:"); mazenode=new MazeNode[row][colum]; build(mazenode);//创建一个row行colum列的mazenode并且把value值都给1 for(int i=1;i
mazenode类
public class MazeNode { public int index1; public int index2; public int value; public MazeNode(int value,int index1,int index2) { this.value=value; this.index1=index1;//下标1 this.index2=index2;//下标2 } //改变找个点的值为2 public void changeValue(MazeNode[][] mazeNode,int index1,int index2){ mazeNode[index1][index2].value=2; } //判断左边是否可走 public boolean left(MazeNode[][] mazeNode,int index1,int index2){ if(mazeNode[index1][index2].value==0){ return true; }return false; } //判断上边是否可走 public boolean up(MazeNode[][] mazeNode,int index1,int index2){ if(mazeNode[index1][index2].value==0){ return true; }return false; } //判断右边是否可走 public boolean right(MazeNode[][] mazeNode,int index1,int index2){ if(mazeNode[index1][index2].value==0){ return true; }return false; } //判断下边是否可走 public boolean down(MazeNode[][] mazeNode,int index1,int index2){ if(mazeNode[index1][index2].value==0){ return true; }return false; }
}
MyStake类//栈
import java.util.Arrays;
import java.util.EmptyStackException;
public class MyStack { private PuzzleValue[]array2; private MazeNode[]array; private int size; private final int INITSIZE=10; public MyStack(){ array=new MazeNode[INITSIZE]; array2=new PuzzleValue[INITSIZE]; } //查找栈内是否存在此路径 public boolean contain(MyStack stack,MazeNode[][] mazeNode,int index1,int index2){ for(int i=0;i>1)); }else { array[size]=mazeNode; size++; } } //出栈 public void pop(MazeNode mazeNode){ if(size==0){ return; }else{ array[size]=null; size--; } } //获得栈顶元素 public MazeNode gettop(){ return array[size-1]; } //改变栈内的value值 public void toRoute(){ for(int i=0;i
文章来源: blog.csdn.net,作者:tdongmu,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/tdongmu/article/details/109275211