有N片叶子的Java树?

有N片叶子的Java树?,java,dom,dom4j,Java,Dom,Dom4j,我正在解决一个Java问题,它需要一个具有N个叶子的树的Java实现。为此,我决定使用XMLDOM树来表示问题。 对于Dom4j,这可能吗 问题基本上是一个游戏树,它代表所有的移动,以计算赢得游戏所需的最小移动数。这对Dom4j有用吗?谢谢。我将尝试回答,但要考虑以下几点: 首先,直接回答您关于是否可以使用XML Dom树来表示问题的问题是的,这是可能的,但在我看来,使用XML DOM树来表示数据结构并不是那么自然(事实上,我也可以称之为滥杀),除非您希望通过API调用将该数据结构序列化到磁盘或

我正在解决一个Java问题,它需要一个具有N个叶子的树的Java实现。为此,我决定使用XMLDOM树来表示问题。 对于Dom4j,这可能吗


问题基本上是一个游戏树,它代表所有的移动,以计算赢得游戏所需的最小移动数。这对Dom4j有用吗?谢谢。

我将尝试回答,但要考虑以下几点:

首先,直接回答您关于是否可以使用XML Dom树来表示问题的问题是的,这是可能的,但在我看来,使用XML DOM树来表示数据结构并不是那么自然(事实上,我也可以称之为滥杀),除非您希望通过API调用将该数据结构序列化到磁盘或网络

这里有一些例子:

一个更干净、更简单的替代方法是定义一个
节点
类,如下所示:

class Node
{
   int value; //assuming the node holds an integer value
   List<Node> childNodes; // these are the N child nodes.
}
类节点
{
int value;//假设节点持有整数值
列出子节点;//这些是N个子节点。
}
然后,游戏算法可以迭代子节点列表以执行其计算逻辑

上述定义可能出现的一个限制是,如果要搜索特定的子节点,则需要在列表中进行迭代,而如果使用DOM4j,则可以使用XPath。但是在内存消耗方面,使用DOM和XPath有其自身的局限性-有关详细信息,请参阅

然而,上面提到的过于简单的数据结构不会有相同的内存含义——而且在计算过程中更容易操作数据结构


希望这有帮助。

我将尝试回答,但要考虑以下几点:

首先,直接回答您关于是否可以使用XML Dom树来表示问题的问题是的,这是可能的,但在我看来,使用XML DOM树来表示数据结构并不是那么自然(事实上,我也可以称之为滥杀),除非您希望通过API调用将该数据结构序列化到磁盘或网络

这里有一些例子:

一个更干净、更简单的替代方法是定义一个
节点
类,如下所示:

class Node
{
   int value; //assuming the node holds an integer value
   List<Node> childNodes; // these are the N child nodes.
}
类节点
{
int value;//假设节点持有整数值
列出子节点;//这些是N个子节点。
}
然后,游戏算法可以迭代子节点列表以执行其计算逻辑

上述定义可能出现的一个限制是,如果要搜索特定的子节点,则需要在列表中进行迭代,而如果使用DOM4j,则可以使用XPath。但是在内存消耗方面,使用DOM和XPath有其自身的局限性-有关详细信息,请参阅

然而,上面提到的过于简单的数据结构不会有相同的内存含义——而且在计算过程中更容易操作数据结构


希望这有帮助。

我将尝试回答,但要考虑以下几点:

首先,直接回答您关于是否可以使用XML Dom树来表示问题的问题是的,这是可能的,但在我看来,使用XML DOM树来表示数据结构并不是那么自然(事实上,我也可以称之为滥杀),除非您希望通过API调用将该数据结构序列化到磁盘或网络

这里有一些例子:

一个更干净、更简单的替代方法是定义一个
节点
类,如下所示:

class Node
{
   int value; //assuming the node holds an integer value
   List<Node> childNodes; // these are the N child nodes.
}
类节点
{
int value;//假设节点持有整数值
列出子节点;//这些是N个子节点。
}
然后,游戏算法可以迭代子节点列表以执行其计算逻辑

上述定义可能出现的一个限制是,如果要搜索特定的子节点,则需要在列表中进行迭代,而如果使用DOM4j,则可以使用XPath。但是在内存消耗方面,使用DOM和XPath有其自身的局限性-有关详细信息,请参阅

然而,上面提到的过于简单的数据结构不会有相同的内存含义——而且在计算过程中更容易操作数据结构


希望这有帮助。

我将尝试回答,但要考虑以下几点:

首先,直接回答您关于是否可以使用XML Dom树来表示问题的问题是的,这是可能的,但在我看来,使用XML DOM树来表示数据结构并不是那么自然(事实上,我也可以称之为滥杀),除非您希望通过API调用将该数据结构序列化到磁盘或网络

这里有一些例子:

一个更干净、更简单的替代方法是定义一个
节点
类,如下所示:

class Node
{
   int value; //assuming the node holds an integer value
   List<Node> childNodes; // these are the N child nodes.
}
类节点
{
int value;//假设节点持有整数值
列出子节点;//这些是N个子节点。
}
然后,游戏算法可以迭代子节点列表以执行其计算逻辑

上述定义可能出现的一个限制是,如果要搜索特定的子节点,则需要在列表中进行迭代,而如果使用DOM4j,则可以使用XPath。但是在内存消耗方面,使用DOM和XPath有其自身的局限性-有关详细信息,请参阅

然而,上面提到的过于简单的数据结构不会有相同的内存含义——而且在计算过程中更容易操作数据结构

希望这有帮助。