Recursion 如何在C#中编写简单的极大极小算法?
我想建立一个简单的树,比较子调用和递归调用,就像一个mini-max算法。比较每个节点的值并返回root的子节点 我已经试了一整天了,但我还不能正确地编写代码。如果你有mini-max算法的经验,请帮助我,或者如果你有任何来源可以了解它,请告诉我 是否有人可以基于此节点生成3个或更多深度(迭代)的示例代码Recursion 如何在C#中编写简单的极大极小算法?,recursion,foreach,tree,iteration,minimax,Recursion,Foreach,Tree,Iteration,Minimax,我想建立一个简单的树,比较子调用和递归调用,就像一个mini-max算法。比较每个节点的值并返回root的子节点 我已经试了一整天了,但我还不能正确地编写代码。如果你有mini-max算法的经验,请帮助我,或者如果你有任何来源可以了解它,请告诉我 是否有人可以基于此节点生成3个或更多深度(迭代)的示例代码 class node { public int value; public int id; public List <node> child = new
class node
{
public int value;
public int id;
public List <node> child = new List <node>();
}
类节点
{
公共价值观;
公共int id;
公共列表子项=新列表();
}
试试这个:
使全局变量:
public node minNode;
public node maxNode;
创建函数:
public void Compare(node currentNode)
{
if (minNode.value>currentNode.value)
{
minNode=currentNode;
}
if (maxNode.value<currentNode.value)
{
maxNode=currentNode;
}
foreach(var currNode in currentNode.child)
{
Compare(currNode);
}
}
然后,在这个变量中取max和min,其中rootNode是树中的根节点
minNode=rootNode;
maxNode=rootNode;
Compare(rootNode);