Java 用于实现alpha-beta修剪算法的数据结构(2层游戏)

Java 用于实现alpha-beta修剪算法的数据结构(2层游戏),java,algorithm,linked-list,nodes,alpha-beta-pruning,Java,Algorithm,Linked List,Nodes,Alpha Beta Pruning,所以我有一个实现alpha-beta的总体想法。我知道我必须使用节点和链表来构建树。但我无法想象如何跟踪。例如,2层游戏中的每个节点将有一个父节点和3个子节点。根节点只有子节点,没有父节点。 我需要一个关于如何创建两个类的入门,一个用于树,一个用于节点数据结构,用于表示这棵树,它可以跟踪父级和子级以及位置 以正确的方式轻推这两个类的代码将受到赞赏。如果我能够理解如何存储和表示数据,那么主要算法将变得很简单 public class tree{ public Node parent; pu

所以我有一个实现alpha-beta的总体想法。我知道我必须使用节点和链表来构建树。但我无法想象如何跟踪。例如,2层游戏中的每个节点将有一个父节点和3个子节点。根节点只有子节点,没有父节点。 我需要一个关于如何创建两个类的入门,一个用于树,一个用于节点数据结构,用于表示这棵树,它可以跟踪父级和子级以及位置

以正确的方式轻推这两个类的代码将受到赞赏。如果我能够理解如何存储和表示数据,那么主要算法将变得很简单

public class tree{
  public Node parent;
  public Node child;

  public Tree(Node parent, Node child){
    this.parent = parent;
    this.child = child;
  }
}
^这是我最初的想法。我不知道我是否在正确的轨道上。
我的主要问题是——如何存储用于alpha-beta修剪的树信息?我对表示这些数据感到困惑。

你有什么问题?如果需要在每个节点中存储3个子节点,请考虑使用<代码>节点[]子< /代码>。树本身将是一个
节点根
具有
parent=null
这里的实际问题是什么?好的,您能给我一个节点类在这种情况下的外观片段吗?会像往常一样有下一个/上一个指针吗?@foxtrot3009如何定义树中的上一个和下一个?