标题:求教五子棋算法
只看楼主
还是菜鸟2015
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2015-5-12
结帖率:100%
 问题点数:0 回复次数:0 
求教五子棋算法
int AlphaBeta(int depth, int alpha, int beta) {
 if (depth == 0) {
  return Evaluate();   //这是最后要调用估价函数吗
  }
 GenerateLegalMoves();    //具体要怎么生成和记录五子棋的着法,比如说我的搜索深度是3,是不是要在这里全部记录下来(那不会很多吗),还有下面又要怎么用这些着法呢?需要定义什么结构去记录?
  while (MovesLeft()) {   //这里是指什么
   MakeNextMove();     //这里是指什么
   val = -AlphaBeta(depth - 1, -beta, -alpha);
  UnmakeMove();        //如何实现撤消着法?
   if (val >= beta) {
   return beta;
  }
  if (val > alpha) {
   alpha = val;
  }
 }
 return alpha;
 }
搜索更多相关主题的帖子: 五子棋 return 记录 如何 
2015-06-02 00:00



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-446088-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013849 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved