这里说一下简单的迷宫问题,老鼠如何在迷宫中起点走到终点,一个二位数组MAZE[][]表示迷宫,MAZE[i][j]=1表示此处有墙,MAZE[i][j]=0表示无墙(可以通过),老鼠走过的路线就将其对应值设置为2,这里提供了一个起点(1,1)和终点(8,10),数组内容如下:
上代码!(这里其实没什么智能性,就像是无头苍蝇一样一直撞到出口)
记录老鼠走过的路径
public class TraceRecord {
public Node first;
public Node last;
public boolean isEmpty() {
return first==null;
}
public void insert(int x, int y) {
Node node = new Node(x, y);
if(isEmpty()) {
first = node;
last = node;
}
else {
last.next = node;
last = node;
}
}
public void delete() {
Node node;
if(isEmpty()) {
System.out.println("【队列已经空了】");
return;
}
node = first;
while (node.next != last) {
node = node.next;
}
node.next = last.next;
last = node;
}
class Node {
int x;
int y;
Node next;
public Node(int x, int y) {
this.x = x;
this.y = y;
this.next = null;
}
}
}
老鼠走迷宫