有没有办法在 Java 中实现具有多个子节点的 LinkedList?
Is there a way to implement a LinkedList with multiple child-nodes in Java?
我正在尝试实现一个通常出现在面向对象编程语言中的包系统:
但我不太确定我应该使用哪种数据结构,我首先想到了有向图。尽管如此,我认为某种允许添加多个子节点的 LinkedList 将是一个更好、更简单的解决方案。
至少我猜是这样......
有人可以告诉我 哪种数据结构可能是解决我的问题的最佳方法吗?
我会像这样使用非二叉树:
public class Pck{
private List<Pck> children;
private Pck parent;//optional
private String name;//optional
//Also include a variable for your data
}
每个包都有对每个子包的引用。
如果您想获取特定包的名称,您还需要维护对 parent 包的引用(以及其层中每个包的名称)。您可以遍历 parent 到下一个 parent 等并构建名称。
同样,你可以通过拆分名称并递归查找下一个来获得具体的包child。
我正在尝试实现一个通常出现在面向对象编程语言中的包系统:
但我不太确定我应该使用哪种数据结构,我首先想到了有向图。尽管如此,我认为某种允许添加多个子节点的 LinkedList 将是一个更好、更简单的解决方案。 至少我猜是这样...... 有人可以告诉我 哪种数据结构可能是解决我的问题的最佳方法吗?
我会像这样使用非二叉树:
public class Pck{
private List<Pck> children;
private Pck parent;//optional
private String name;//optional
//Also include a variable for your data
}
每个包都有对每个子包的引用。
如果您想获取特定包的名称,您还需要维护对 parent 包的引用(以及其层中每个包的名称)。您可以遍历 parent 到下一个 parent 等并构建名称。
同样,你可以通过拆分名称并递归查找下一个来获得具体的包child。