学海网 文档下载 文档下载导航
设为首页 | 加入收藏
搜索 请输入内容:  
 导航当前位置: 文档下载 > 所有分类 > IT/计算机 > 计算机软件及应用 > 八数码问题Java语言实现

八数码问题Java语言实现

八数码问题Java语言实现

import java.util.ArrayList;

import java.util.List;

/**

*

* @author dudizi

* @version 1.0

* @date 2013/3/15

*/

public class BaShuMa {

//方向数组

int[][] dir = { { 0, -1 }, { -1, 0 }, { 0, 1 }, { 1, 0 } };

//搜索表

static Node[] all = new Node[1000000];

//搜索成功后的搜索节点到初始节点的路径上的节点列表 static List<Node> result = new ArrayList<Node>();

//判断此节点的八数码状态是否在搜索表中已经存在 public static boolean hasSame(Node node) {

for (int i = 0; i < all.length; i++) {

if (all[i] != null && node.equals(all[i]))

return true;

}

return false;

}

//搜索八数码解的方法

public void Search(Node node) {

int i = 0;

int cur = 0;

// 把初始状态放到状态表中

all[i++] = node;

while (cur < 1000000) {

if (node != null) {

int x = 0;

int y = 0;

Node exNode = null;

int[][] st = null;

if (!node.isEndState()) {

// 从四个方向去扩展八数码的状态 for (int j = 0; j < 4; j++) {

//计算移动后新的x,y坐标 x = node.getX() + dir[j][0];

y = node.getY() + dir[j][1];

//产生一个新的状态节点

exNode = new Node(x, y);

第1页

TOP相关主题

  • 八数码问题
  • 八数码问题代码
  • 八数码问题实验报告
  • 八数码问题 广度优先
  • a 算法解决八数码问题
  • 八数码问题启发式搜索
  • 八数码问题 a
  • 八数码

我要评论

相关文档

  • 最优合并and八数码问题Java

    人工智能关于八数码问题... 23页 免费 八数码问题Java语言实现 6页 免费 人工...算法分析与设计实验周 最优合并问题 八数码问题 — 所做任务说明及题目相关知识...

  • 八数码问题

    C语言八数码问题之人工智... 11页 2财富值 JAVA 八数码问题实现 9页 免费...八数码实验报告 八数码实验报告 : 03122997 学校:上海大学学院:计算机学院 关键字...

  • 八数码问题C语言代码

    八数码问题源程序及注释: 八数码问题源程序及注释: #include<stdio.h> #include<conio.h> int n,m; typedef struct Node { char matrix[10];/*存储矩阵*/...

  • 八数码问题

    深度优先实现 /***说明*** 用宽度优先搜索算法实现八数码问题 ***/ #include<iostream> #include<stdio.h> #include<fstream> #include<stdlib.h> #include...

  • 八数码问题A算法的实现及性能分析

    八数码问题形式化描述初始状态: 初始状态向量:规定向量中各分量对应的位置,各...(x) 6 三、算法实现及性能比较这里通过 c++语言实现各种排序算法(源码见附录...

  • 八数码问题

    8页 免费 八数码 12页 免费 八数码问题C语言代码 7页 2财富值搜...如要投诉违规内容,请到百度文库投诉中心;如要提出功能问题或意见建议,请点击此处...

  • 【论文】基于A *算法的八数码问题的优化实现

    基于A *算法的八数码问题的优化实现_专业资料。用人工智能领域中经典的A^*算法解决了人工智能中常见的八数码问题。本文首先介绍了八数码问题,然后对A^*算法进行了...

  • A算法的探讨及其对八数码问题实现

    A*算法的探讨及其对八数码问题实现叶从欢 孙世新 610054 摘 在启发式搜索算法上对 A*算法的定 要: 对人工智能中的经典启发式搜索算法进行了比较详细的介绍,...

  • 八数码问题及代码合集

    5.八数码问题的基类 八数码问题的基类及其成员函数的实现如下: #define Num 9 class TEight { public: TEight(){} TEight(char *fname); virtual void Search...

  • 【论文】用VC++实现基于A*算法的八数码问题

    再依据这种算法用可视化编程语言VC++6.0来实现八数码问题的求解过程,取得了预期的搜索解,提高了搜索效率。维普资讯 http://www.cqvip.com 第L 6卷 20O 6年 ...

站点地图 | 文档上传 | 侵权投诉 | 手机版
新浪认证  诚信网站  绿色网站  可信网站   非经营性网站备案
本站所有资源均来自互联网,本站只负责收集和整理,均不承担任何法律责任,如有侵权等其它行为请联系我们.
文档下载 Copyright 2013 doc.xuehai.net All Rights Reserved.  email
返回顶部