这是关于树图的noobie问题.我已经阅读了
Java API和其他文档,但我仍然不清楚它是如何工作的.
根据我的理解,java(或任何语言)中的树有点像家谱;你说的地方:
Layer 1 OldestGuy Layer 2 OldGuy1 Oldguy2 OldGuy3 OldGuy4 OldGuy5 Layer 3 Guy1 Guy2 Guy3 Guy4 Guy5 Guy6........ etc
其中第1层有1个值(即中心节点),并且从那里可以在每个后续层中有任意数量的值(或者Guys),并且一些“分支”可以比其他更长(例如它可以是OldestGuy) – > OldGuy1 – > Guy1& Guy2 … Guyn,同时另一个分支只是OldestGuy – > OldGuy4)
考虑到这一点,我试图在特定分支的特定位置为TreeMap添加值,同时建立特定的连接,但我似乎得到的结果与HashMap的结果相同.
(看起来我想做的事情需要比TreeMap更多的东西……因为Key(或Layer(?)对于几个不同的值会是相同的)
任何建议/解释都会很棒,因为我觉得好像我正在用这个咆哮错误的树.
我已经看到使用googles .jar(例如家谱)完成此操作的示例,但我只是想了解这一点,因为TreeMap和Trees之间似乎存在很多冲突以及如何在其中存储数据.
解决方法
TreeMap只是Map的一个实现,碰巧在幕后使用了一个红黑树.树的详细信息不会向您公开,因此您无法将元素存储在任意位置.
换句话说,TreeMap不是通用树数据结构.如果这是你真正想要的,也许看看这个Stack Overflow问题:Java tree data-structure?.