java填充迷宫路径颜色_java寻找迷宫路径的简单实现

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

mazenode类

public class MazeNode { public int index1; public int index2; public int value; public MazeNode(int value,int index1,int index2) { this.value=value; this.index1=index1;//下标1 this.index2=index2;//下标2 } //改变找个点的值为2 public void changeValue(MazeNode[][] mazeNode,int index1,int index2){ mazeNode[index1][index2].value=2; } //判断左边是否可走 public boolean left(MazeNode[][] mazeNode,int index1,int index2){ if(mazeNode[index1][index2].value==0){ return true; }return false; } //判断上边是否可走 public boolean up(MazeNode[][] mazeNode,int index1,int index2){ if(mazeNode[index1][index2].value==0){ return true; }return false; } //判断右边是否可走 public boolean right(MazeNode[][] mazeNode,int index1,int index2){ if(mazeNode[index1][index2].value==0){ return true; }return false; } //判断下边是否可走 public boolean down(MazeNode[][] mazeNode,int index1,int index2){ if(mazeNode[index1][index2].value==0){ return true; }return false; }

}

MyStake类//栈

import java.util.Arrays;

import java.util.EmptyStackException;

public class MyStack { private PuzzleValue[]array2; private MazeNode[]array; private int size; private final int INITSIZE=10; public MyStack(){ array=new MazeNode[INITSIZE]; array2=new PuzzleValue[INITSIZE]; } //查找栈内是否存在此路径 public boolean contain(MyStack stack,MazeNode[][] mazeNode,int index1,int index2){ for(int i=0;i>1)); }else { array[size]=mazeNode; size++; } } //出栈 public void pop(MazeNode mazeNode){ if(size==0){ return; }else{ array[size]=null; size--; } } //获得栈顶元素 public MazeNode gettop(){ return array[size-1]; } //改变栈内的value值 public void toRoute(){ for(int i=0;i

文章来源: blog.csdn.net,作者:tdongmu,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/tdongmu/article/details/109275211

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值