我已经用alpha-beta修剪为tic tac脚趾编写了一个minimax算法(可能是问题,之前工作正常),但并不总是选择最佳动作(例如,不能立即获胜)。 但是,它仍然会阻止你赢得任何方式。
示例:
tableView.cellLayoutMarginsFollowReadableWidth = false
代码(完整见here):
Do you want to go first (y/n)? n
Going in: 2,2
...
.X.
...
Where do you want to go (row,col)? 1,2
.O.
.X.
...
Going in: 1,1
XO.
.X.
...
Where do you want to go (row,col)? 1,3
XOO
.X.
...
Going in: 2,3 (?)
XOO
.XX
...
Where do you want to go (row,col)?
编辑:删除修剪但仍然破碎
答案 0 :(得分:0)
在一行但最后一行中,您需要将UPDATE myTable SET val = val + 1 WHERE id = "X" or "Y"
而不是False
传递给True
,因为您已经(暂时)已经(暂时)播放了“计算机”行动,即{ {1}}。 miniMaxScore()
是一个人类对手必须玩的游戏状态。