• 大小: 0.24M
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-03-28
  • 语言: Java
  • 标签: java  

资源简介

这个小程序是我1年多前自己写着玩的,当时不懂这么多,两个个文件就搞定了,写的也不规范。 ai不是很智能,只是会搜索当前局面的最优解,评分规则是我从网上找的一个。大概介绍一下这个规则: 能成死二(当前位置下子后,可以有两颗子连在一起,但是一端有对方的一颗子或者边界阻挡),20分; 能成活二(当前位置下子后,可以有两颗子连在一起,两端没有对方棋子或者边界),80分; 能成死三,180分; 能成活三,800分; 能成死四,1200分; 能成活四,2000分; 能成五连,10000分; 程序遍历所有空白点,算出4个方向(横、竖、左斜、右斜)的分数和,算每个点的分数,然后选择所有节点中分数最高的一个落子。当时参考了一个别人的程序,他在程序中设定只搜索8x8的空间,怕电脑 承受不了,我自己实现后并没有发现这个问题。 

资源截图

代码片段和文件信息

package jsj.lgl;

import java.awt.Color;
import java.awt.Graphics;
import java.awt.Point;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;

import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JOptionPane;
import javax.swing.JPanel;

public class CBoardPanel extends JPanel implements MouseListener
{
private static final int START_X=20;
private static final int START_Y=20;
private static final int STEP=35;
private static final int ROW=15;
private static final int COL=15;

public static final int BLANK=1;
public static final int WHITE=-1;
public static final int NONE=0;

public static final int AI_FIRST=1;
public static final int HUMAN_FIRST=2;

public static final int EASY=2;
pu

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        301  2012-07-08 19:16  Chess5\.classpath

     文件        382  2012-07-08 19:16  Chess5\.project

     文件        629  2012-07-08 19:16  Chess5\.settings\org.eclipse.jdt.core.prefs

     文件         23  2012-07-11 21:02  Chess5\bin\ChessBoard.bat

     文件      11358  2008-01-31 23:10  Chess5\bin\image\b.jpg

     文件     130005  2008-01-31 23:27  Chess5\bin\image\chessboard.jpg

     文件      10981  2008-01-31 23:29  Chess5\bin\image\w.jpg

     文件       1191  2012-07-12 08:40  Chess5\bin\jsj\lgl\CBoardPanel$AI.class

     文件       9676  2012-07-12 08:40  Chess5\bin\jsj\lgl\CBoardPanel.class

     文件       3492  2012-07-11 23:21  Chess5\bin\jsj\lgl\ChessBoard.class

     文件      11358  2008-01-31 23:10  Chess5\image\b.jpg

     文件     130005  2008-01-31 23:27  Chess5\image\chessboard.jpg

     文件      10981  2008-01-31 23:29  Chess5\image\w.jpg

     文件      12501  2012-07-12 08:40  Chess5\src\jsj\lgl\CBoardPanel.java

     文件       3036  2012-07-11 23:21  Chess5\src\jsj\lgl\ChessBoard.java

     目录          0  2013-12-07 16:48  Chess5\bin\jsj\lgl

     目录          0  2013-12-07 16:48  Chess5\src\jsj\lgl

     目录          0  2014-03-28 14:45  Chess5\bin\image

     目录          0  2013-12-07 16:48  Chess5\bin\jsj

     目录          0  2013-12-07 16:48  Chess5\src\jsj

     目录          0  2013-12-07 16:48  Chess5\.settings

     目录          0  2013-12-07 16:48  Chess5\bin

     目录          0  2014-03-28 14:45  Chess5\image

     目录          0  2013-12-07 16:48  Chess5\src

     目录          0  2013-12-07 16:48  Chess5

----------- ---------  ---------- -----  ----

               335919                    25


评论

共有 条评论