Tag: tic tac toe

使用TicTacToe的Minimax算法无法正常工作

我已经在这个论坛上发布了一个类似的问题,但由于旧post有点长,我重写了我的算法,我正在开始这个新post。 可以在这里找到旧post。 所以我只是试图为我的TicTacToe游戏实现一个minimax算法,除非它变得相当困难,即使经过几天试图找到错误,我也找不到它。 你可以在下面找到我的代码。 首先,我有一些定义,typedef和声明: typedef signed char s8; typedef unsigned char u8; typedef s8 score; #define STATE_00 getBoardState(0, 0) #define STATE_01 getBoardState(0, 1) #define STATE_02 getBoardState(0, 2) #define STATE_10 getBoardState(1, 0) #define STATE_11 getBoardState(1, 1) #define STATE_12 getBoardState(1, 2) #define STATE_20 getBoardState(2, 0) #define STATE_21 getBoardState(2, 1) #define STATE_22 getBoardState(2, 2) typedef enum { […]

Tic-Tac-Toe:如何填充决策树?

我正在制作Tic-Tac-Toe计划。 我打算用它来使用minimax。 我为所有可能的游戏序列制作了一个带有空间的树,我正在寻找一种填充它的方法。 我目前有这种类型: typedef struct name { char grid [3] [3]; struct name * child [9]; } node; 我正在寻找一种填充网格的方法,就像它在这里显示的一样。 我如何填充网格以确保所有可能的组合都存在? 我的计划是让游戏识别玩家可以采取的每一个动作,然后决定采取什么步骤来获胜(我仍然需要弄清楚决定部分,但我一直坚持,直到我可以填充树中的网格) 。