Java 什么样的数据结构最适合少数元素,但不要';我不知道有多少?

Java 什么样的数据结构最适合少数元素,但不要';我不知道有多少?,java,data-structures,linked-list,tree,nodes,Java,Data Structures,Linked List,Tree,Nodes,我不知道这是不是一个适合问这个问题的地方,但我们来了 我正在用手工和以前手工制作的旧链表制作一个树数据结构,它由节点组成,这些节点是节点类的对象,其中有三个属性: 父节点(1) 数据,它是一个对象(存储的数据) 存储节点(X)的子集合(?) 那么,必须使用哪种数据结构来存储子节点 请记住: 1) 是一个树,可能使用列表是非常强大的,而且实例不合适,因为我不打算在那里存储1000个子节点 2) 它们不会有很多元素,但我不知道节点可以有多少元素 3) 定义一个节点在建筑中可以拥有的最大子节点数的

我不知道这是不是一个适合问这个问题的地方,但我们来了

我正在用手工和以前手工制作的旧链表制作一个树数据结构,它由节点组成,这些节点是节点类的对象,其中有三个属性:

  • 父节点(1)
  • 数据,它是一个对象(存储的数据)
  • 存储节点(X)的子集合(?)
那么,必须使用哪种数据结构来存储子节点

请记住:

1) 是一个树,可能使用列表是非常强大的,而且实例不合适,因为我不打算在那里存储1000个子节点

2) 它们不会有很多元素,但我不知道节点可以有多少元素

3) 定义一个节点在建筑中可以拥有的最大子节点数的大小在使用树时可能会有问题,如果我必须从无到有地添加另一个子节点,会发生什么

任何评论、建议或澄清请求都将受到高度重视


提前感谢。

B+树应该是合适的,因为大多数DBMS软件也使用B+树、B+树或哈希函数,并且它们能够存储从小到大的数据项集。

为什么列表必须包含至少1000个元素才合适?Java的ArrayList初始大小为10。您可以使用ArrayList来存储孩子。您可以使用ArrayList或Java的linkedList来实现列表接口。你必须问自己的问题是:我是否需要经常查找?如果是这样,arrayList会更好,因为它有更好的索引。因为它是一个实际的数组。您是否需要插入和删除,不仅在开始/结束位置,而且在中间位置?如果是这样,那么linkedList。如果您感到满意,请投票并接受答案