【发布时间】:2015-03-05 02:21:36
【问题描述】:
我正在构建一个跳棋应用程序。
我已经开始构建 AI,并且阅读了很多关于极小极大的文章。
有些东西我不明白,我应该使用什么类型的树来构建“游戏树”(我正在用 JAVA 编程)
【问题讨论】:
-
请注意,与二叉树、2-3 树和堆树等其他树不同,极小极大博弈树中的节点可以有任意数量的子节点,具体取决于博弈情况。这棵树由一个带有多个子节点的根节点组成,根据它们的结果,它可以再有多个子节点。以图形方式支持这一点。 commons.wikimedia.org/wiki/File:Plminmax.gif
-
好的,谢谢,这棵树在 java 的 API 中叫什么名字?还是我应该自己构建这棵树的类?
-
我建议您自己建造一棵树,这将使您更深入地了解树木的实际工作方式以及如何穿过树木。
-
stackoverflow.com/questions/27249304/… 的副本。您实际上不需要 minimax 的树数据结构 - 该算法遍历树,但您不需要存储它。您可以在评估节点时使用列表来存储节点的子节点。
标签: java tree artificial-intelligence minimax