java实现走迷宫算法

本文通过Java代码实现了一种迷宫求解算法,从文件读取迷宫地图,利用深度优先搜索或广度优先搜索策略寻找从入口到出口的路径。在地图中,E表示入口,X表示出口,*表示可通行区域,1表示障碍物。最终展示一条从入口到出口的路径,但不保证是最优解。
摘要由CSDN通过智能技术生成

代码实现了 读取文件中迷宫地图,打印迷宫地图并找到一条出口。第一次写java代码,留着纪念。

用一个文件存储 N*N的迷宫地图,E代表的是入口,X代表的是出口、*代表可以走,1代表不可以走。每次在原坐标的基础上,搜寻上下左右四个方向的路径,是否可行。直到找到出口。找到一条路径就结束,最后打印一条路径(不一定是最优路径)。

6
1 * E 1 * *
1 * * * * *
1 * 1 * * X
* * 1 1 * 1
* 1 * * * *
* * * 1 1 1
代码如下:

</pre><pre name="code" class="java">package com.maze.path;

import java.util.Stack;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;

class Step{
    int x,y;
    public Step(int x,int y) {
        this.x = x;
        this.y = y;
    }
}

public class Path {
	private int inx,iny; //the location of Entrance and Exit
//	private char map[][]; 
	static  int dir[][] = {
  {0,1},{0,-
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值