maze.java
来自「基本的数据结构的java代码」· Java 代码 · 共 63 行
JAVA
63 行
import java.io.*;
import java.util.*;
public class Maze{
int mazeSize;
InterSection[] intSec;
int exit;
Maze(String fileName){
String line;
Integer temp;
try{
BufferedReader in = new BufferedReader(new FileReader(fileName));
line = in.readLine();
mazeSize = Integer.parseInt(line.trim());
intSec = new InterSection[mazeSize + 1];
for(int i = 1; i <= mazeSize; i ++){
line = in.readLine();
StringTokenizer tokenizer = new StringTokenizer(line);
InterSection curr = new InterSection();
curr.left = Integer.parseInt(tokenizer.nextToken());
curr.forward = Integer.parseInt(tokenizer.nextToken());
curr.right = Integer.parseInt(tokenizer.nextToken());
intSec[i] = curr;
}
exit = Integer.parseInt(in.readLine());
in.close();
}
catch(Exception e){
e.printStackTrace();
}
}
public boolean travMaze(int intSecValue){
if(intSecValue > 0){
if(intSecValue == exit){
System.out.print(intSecValue + "<==");
return true;
}
else if(travMaze(intSec[intSecValue].left)){
System.out.print(intSecValue + "<==");
return true;
}
else if(travMaze(intSec[intSecValue].forward)){
System.out.print(intSecValue + "<==");
return true;
}
else if(travMaze(intSec[intSecValue].right)){
System.out.print(intSecValue + "<==");
return true;
}
}
return false;
}
}
class InterSection{
int left;
int forward;
int right;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?