网站建设资讯

NEWS

网站建设资讯

使用java实现寻找迷宫路径-创新互联

这期内容当中小编将会给大家带来有关使用java实现寻找迷宫路径,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

在菏泽等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站设计、成都做网站 网站设计制作定制开发,公司网站建设,企业网站建设,品牌网站建设,营销型网站建设,外贸营销网站建设,菏泽网站建设费用合理。

项目介绍:

一个网格迷宫由n行m列的单元格组成,每个大院个要么是空地(用0表示),要么是障碍物(用1表示)。你的任务是找一条从起点到终点的移动序列,其中只能上下左右移动到相邻单元格。任何时候都不能在有障碍物的单元格中,也不能走到迷宫之外。起点为左上角和终点右下角。

项目功能:

解决迷宫路径查找问题,寻找一条从左上角迷宫入口到右下角迷宫出口的一条有效路径,0代表可走,1代表不能行走,找到请输出最终的迷宫和路径信息,找不到请输出不存在有效路径。

项目所用知识点:

采用Java面向对象思想,二维数组以及非递归栈进行实现

项目实现思路:
1.定义一个迷宫节点类型(MazeNode)的二维数组
2.初始化每个格子中的value值。给二维数组每个格子存放对象。对象的value值只能为0(当前格子可以走)或者1(当前格子不能走)
3.创建围墙,可以有效防止越界问题。根据当前节点周围四个方向格子中的value值,判断当前节点的上下左右四个方向是否可走(0是可走,1不可走)。
4.开始走迷宫。采用栈操作,记录行走的路径,将元素入栈,判断当前栈顶元素的哪个方向可走,将其中一个可走方向进行入栈操作,直到右下角元素停止。栈中保存走过的路径。 注意: 如果遇到走入死胡同问题,此时需要将是栈顶元素并且栈顶元素的四个方向都不能行走,此时将其出栈,选择新方向再次入栈,直到右下角元素停止。

项目实现 :

Maze类

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            
文章名称:使用java实现寻找迷宫路径-创新互联
URL地址:http://cdweb.net/article/dhcjsh.html