Data structures 极小极大算法是否可能?

Data structures 极小极大算法是否可能?,data-structures,minimax,Data Structures,Minimax,是否可以在队列数据结构中表示极大极小算法,还是只能在树中表示极大极小算法?如果将极大极小算法实现为广度优先的博弈树搜索,则队列的FIFO特性自然适合该算法。您将在队列中存储每个位置,然后存储该位置可能产生的所有位置。递归,直到达到终止搜索深度。但缺点是,终端节点的数量与树的深度成指数关系,这是一个很大的缺点,您必须将它们全部存储在队列中,以便进行广度优先搜索 Minimax更好地实现为深度优先搜索,它只需要与树深度相关的线性内存量。用于此搜索的数据结构是一个堆栈,通过递归函数调用或基于堆栈的直接

是否可以在队列数据结构中表示极大极小算法,还是只能在树中表示极大极小算法?

如果将极大极小算法实现为广度优先的博弈树搜索,则队列的FIFO特性自然适合该算法。您将在队列中存储每个位置,然后存储该位置可能产生的所有位置。递归,直到达到终止搜索深度。但缺点是,终端节点的数量与树的深度成指数关系,这是一个很大的缺点,您必须将它们全部存储在队列中,以便进行广度优先搜索


Minimax更好地实现为深度优先搜索,它只需要与树深度相关的线性内存量。用于此搜索的数据结构是一个堆栈,通过递归函数调用或基于堆栈的直接实现,而不需要函数调用开销。

您的意思是询问是否可以在minmax算法中使用队列?或者你在问是否可以使用队列来表示游戏的不同状态?游戏状态形成一棵树,包含孩子和家长。使用三角板穿过一棵树是一种方便的方法,深度优先或广度优先。因此,您可以使用deque实现它,但仍然需要知道哪个状态是哪个父级的子级。