【发布时间】:2016-10-26 03:04:03
【问题描述】:
我不知道这是不是问这个问题的合适地方,但我们开始吧。
我正在使用以前手工制作的旧链表手工制作树数据结构,它由节点组成,节点是节点类的对象,其中包含三个属性:
- 父节点 (1)
- data,这是一个Object(存储的数据)
- 存储节点 (X) 的子集合 (?)
那么,必须使用哪种数据结构来存储子节点?
请记住:
1) 是一棵树,也许使用一个列表非常强大,并且实例不合适,因为我不会在那里存储 1000 个子节点。
2) 它们不会包含很多元素,但我不知道它们中有多少可以按节点。
3) 定义一个节点在建筑物中可以拥有的最大子节点的大小在使用树时可能会出现问题,如果我必须从无到有添加另一个子节点会发生什么?
非常感谢任何评论、建议或澄清要求
提前致谢。
【问题讨论】:
-
为什么列表必须包含至少 1000 个元素才合适? Java 的 ArrayList 初始大小为 10。
-
可以使用ArrayList来存储孩子
-
正如人们提到的,你可以使用arrayList,或者java的linkedList,它们都实现了List接口。您必须问自己的问题是:我是否需要经常查找?如果是这样,arrayList 更好,因为它有更好的索引..因为它是一个实际的数组。您是否需要插入和删除,不仅在开始/结束,而且在中间?如果是这样,那么linkedList。
标签: java data-structures linked-list tree nodes