这是一个关于树映射的noobie问题。我已经通读了Java API和其他文档,但仍然不清楚这是如何工作的。
据我所知,java (或任何语言)中的树有点像家谱树;您可以这样说:
Layer 1 OldestGuy
Layer 2 OldGuy1 Oldguy2 OldGuy3 OldGuy4 OldGuy5
Layer 3 Guy1 Guy2 Guy3 Guy4 Guy5 Guy6........ etc其中layer 1有1个值(即一个中心节点),并且在随后的每个层中可以有任意数量的值(或Guy1 ),并且一些“分支”可能比其他的更长(例如,它可以OldestGuy -> OldGuy1 -> Guy1& Guy2...Guyn,而同时另一个分支只是OldestGuy -> OldGuy4)
带着这种想法,我试图在建立特定连接的同时,将值添加到特定分支的特定位置的TreeMap中,但我得到的结果似乎与HashMap相同。
(似乎我想要做的不只是TreeMap ....as键(或层(?))对于几个不同的值是相同的)
任何建议/解释都将是非常棒的,因为我觉得在这个问题上我真的找错了地方。
我见过使用TreeMap .jar (例如家谱)来实现这一点的例子,但我只是试图理解这一点,因为在googles和树之间似乎有很多冲突,以及如何在其中存储数据。
发布于 2012-03-04 05:29:22
TreeMap只是Map的一个实现,它恰好在幕后使用了一棵红黑树。树的细节不会暴露给您,因此您不能将元素存储在任意位置。
换句话说,TreeMap不是通用的树形数据结构。如果这就是您真正想要的,也许可以看看这个堆栈溢出问题:Java tree data-structure?。
发布于 2018-01-06 17:37:54
public class TreeMap<K,V>
extends AbstractMap<K,V>
implements NavigableMap<K,V>, Cloneable, Serializable,因此java中的not线程values.映射不允许空键,但允许多个空键
树形地图的工作是基于树形数据结构的。
发布于 2012-03-04 05:29:40
Java使用树作为内部数据结构来进行O( TreeMap n)查找和插入,但不会在其接口中公开其树结构。因此,例如,无法获取树节点及其所有后代,也无法使用它表示家谱树。
https://stackoverflow.com/questions/9549991
复制相似问题