【发布时间】:2018-10-11 17:42:11
【问题描述】:
我正在尝试使用 java 中的递归和树在游戏井字游戏中生成所有可能的动作。
我正在使用我发现很难的通用树和递归。但是,树中的第一代应该填充 1 个点,然后下一代填充 2 个点,然后下一代填充 3 个点,然后下一代填充 4 个点,以此类推。
我的目标是创建一个节点:
#
/
#-#-#-#-#-#-#-#-#
/ / / / / / / / /
(should be filled) #-#-#-#-#-#-#-#-#
每个子节点有 9 个兄弟节点。 每个兄弟姐妹有 1/9 可能的展示位置。 一个“X”或“O”被交替放置在每一代新的孩子中(在这 9 个位置中的一个)。 到最后一代,树应该被 X 和 O 填充。
问题:我的 insertLayer 方法被无限递归调用。当我输入一个计数器来跟踪它的增长情况时,它会卡在 6-8 之间。
【问题讨论】:
-
我确实将方法打印了 5 次并进行了跟踪,每次递归调用后我都尝试
return root;,结果差异为零。
标签: java recursion tree tic-tac-toe