设为首页 加入收藏

TOP

VC中利用人工智能解决八迷宫问题(二)
2014-11-23 19:49:00 】 浏览:585
Tags:利用 人工智能 解决 迷宫 问题
为X,Y坐标;
    Y1 = 1;
    Y2 = 2;
    X1 = Tile1;
    X2 = Tile2;
    if(Tile1 > 3) { Y1 = 2; X1 = Tile1 - 3; }
    if(Tile1 > 6) { Y1 = 3; X1 = Tile1 - 6; }
    if(Tile2 > 3) { Y2 = 2; X2 = Tile2 - 3; }
    if(Tile2 > 6) { Y2 = 3; X2 = Tile2 - 6; }
    //为了确保距离值为正说,进行必要的换位处理;
    if(Y1 - Y2 < 0) {
     temp = Y1;
     Y1 = Y2;
     Y2 = temp;
    }
    if(X1 - X2 < 0) {
     temp = X1;
     X1 = X2;
     X2 = temp;
    }
    return ((Y1 - Y2) + (X1 - X2));
   }

  public:
   // 异常处理;
   class ERROR_ILLEGAL_MOVE{};
   class ERROR_NO_MORE_DIRECTIONS{};
   class ERROR_OUT_OF_BOUNDS{};
   //用于heuristic函数;它代表了当前状态与前一状态的距离;这个数值越小越好。
   int GetDepth() {
    return Depth;
   }

   // CState类构造函数;
   CState() {
    Depth = 0;
    Grid[1] = 6; // for slower machines use 4
    Grid[2] = 1; // for slower machines use 1
    Grid[3] = 7; // for slower machines use 3
    Grid[4]
首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Visual C++ 入门精解-WINDOWS应.. 下一篇VC++实现动画弹出/弹入式窗口

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目