Android中国象棋程序(Eclipse ADT开发)
https://github.com/doctording/chess
先参考学习如下博文:
http://blog.csdn.net/kingkong1024/article/details/7639401
http://hk.gamfe.com/news/201502/2170.html
参考图书《PC游戏编程(人机博弈)》
极大极小值法
深度搜索(dfs)伪代码
/**
1。 p 为棋盘
2。 d 为规定的搜素最大深度,比如d层红方,d-1层为黑方,d-2层为红方...依此类推,可采用mod2来判断当前是哪一方
4。评估棋盘的函数evaluation,当然需要看是哪一方,若红方为机器,黑方为人,那么机器(红方)做为极大(INF),人作为极小(-INF),让机器选择最合适的一步。
**/
int MiniMax(chessmap p , int d)
{