最少步数
KB
- 描述
-
这有一个迷宫,有0~8行和0~8列:
1,1,1,1,1,1,1,1,1
1,0,0,1,0,0,1,0,1
1,0,0,1,1,0,0,0,1
1,0,1,0,1,1,0,1,1
1,0,0,0,0,1,0,0,1
1,1,0,1,0,1,0,0,1
1,1,0,1,0,1,0,0,1
1,1,0,1,0,0,0,0,1
1,1,1,1,1,1,1,1,1 0表示道路,1表示墙。
现在输入一个道路的坐标作为起点,再如输入一个道路的坐标作为终点,问最少走几步才能从起点到达终点?
(注:一步是指从一坐标点走到其上下左右相邻坐标点,如:从(3,1)到(4,1)。)
import java.awt.Point;
import java.util.ArrayList;
import java.util.Scanner;
public class LeastStep {
static void main(String[] args) {
leastStep = new LeastStep();
leastStep.solution();
solution() {
new Scanner(System.in);
= { { 1, 1, 1, 1, 1, 1, 1, 1, 1 },
1, 0, 0, 1, 0, 1 }, { 1, 0, 0, 1, 1, 0, 0, 0, 1 },
0, 1, 1, 0, 1, 1 }, { 1, 0, 0, 0, 0, 1, 0, 0, 1 },
1, 0, 1, 0, 0, 1 }, { 1, 1, 0, 1, 0, 1, 0, 0, 1 },
1, 0, 0, 0, 0, 1 }, { 1, 1, 1, 1, 1, 1, 1, 1, 1 } };
in.nextInt();
0; j < size; j++) {
in.nextInt();
in.nextInt();
in.nextInt();
in.nextInt();
endx && starty == endy){
System.out.println(0);
continue;
将矩阵复位
0; k < 9; k++) {
0; h < 9; h++) {
(maze[k][h] < 0) {
0;