安卓的黑白棋算法(只介绍软件的重点部分, 细节不介绍)
首先是界面问题, 这个比较简单, 只是自定义一个view对象, 首先将三种棋子的图片在自定义View对象中初始化为Bitmap对象, 其中有一个数组存储现在的棋局,
for ( int i = 0; i < GameSize; i++)
{
for (int j = 0; j < GameSize; j++ )
{
。。。。
}
}
玩家落子的时候进行判断,如果没有可以翻的棋子的话可以0, 表示这个地方不可以落子,并且告诉用户,
重点是电脑的落子算法:
首先通过深度优先,搜出所有的可以落子的地方, 然后在每个落子的地方进行深度搜索,如果我落子在这里, 可以模拟对手的进行落子,并且模拟对手落子可以选择最佳骡子,并计算最大可以吃掉的棋子,作为电脑的落子。
下载源代码