问题描述:走迷宫本项目要求使用深度优先搜索(或广度优先搜索)解决迷宫问题,具体要求如下

safsdff 2012-12-04 11:25:45
设计内容
问题描述:走迷宫
   本项目要求使用深度优先搜索(或广度优先搜索)解决迷宫问题,具体要求如下:
输入:存储在文本文件maze.txt中迷宫,该文件格式为如下:
第1行:
n m(这里n、m是两个整数,表示该迷宫共有n行和m列,两者间以一个空格隔开)
第2行~第(n+1)行:
每行由m个无空格分隔的连续字符组成,每个字符只能在0、1间取值,其中取0表示该位置没有阻隔,可以通过,取1则表示不能通过。
如下是一个输入样例(注意在maze文件中不包括分隔线---):
4 5
00011
01010
00001
11100
   2.输出:
输出一条从迷宫左上角进入到右下角出来的路径,该路径由迷宫中各数据元素的坐标标识。这里规定左上角坐标为(0,0),各坐标分别向右和向下递增。如在上文的示例中,起点为(0,0),终点为(3,4),一条从起点到终点的路径为:(0,0)(1,0)(2,0)(2,1)(2,2)(2,3)(3,3)(3,4)。
   3.界面要求:
  以控制台方式输出或其它更为友好的人机界面输出。
...全文
205 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
safsdff 2012-12-08
  • 打赏
  • 举报
回复
public class zuoye { /** * @param args the command line arguments */ public static void main(String[] args) { int[][] a = {{0, 0, 1, 1}, {1, 0, 0, 1}, {1, 0, 0, 0}, {1, 1, 0, 0}}; int i, j;int[] x=new int[7];int[] y=new int[7];int q=1,w=1; i = 0;y[0]=x[0]=0; j = 0; a[0][0] = -1; // TODO code application logic here while (i < 4 && j < 4) { if (i + 1 < 4 && a[i + 1][j] == 0) {i++; y[q]=j; x[q]=i;q++; a[i][j] = -1; } else if (j + 1 < 4 && a[i][j + 1] == 0) {j++; x[q]=i;y[q]=j;q++; a[i][j] = -1; } if (i == 3 && j == 3) { break; } } for (j = 0; j < 7; j++) { System.out.println("("+x[j]+","+y[j]+")"); } }}

50,528

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧