【发布时间】:2012-10-11 04:21:39
【问题描述】:
所以你可能已经猜到了,我试图在 Java 中将一棵红黑树转换为一棵 2,4 树。我并没有太拘泥于它是如何工作的,而是更多地想找出遍历树的最佳方法。
将使用预先构建的红黑树,因此我必须以某种方式从每个节点收集信息,然后逐个节点构建新的 2,4 树。
我正在考虑使用基于数组的实现作为“过渡”阶段。例如,在array[i],它的左孩子是array[i(*2)],它的右孩子是array[(i*2)+1)]。然后遍历数组并通过获取其信息(即它是否具有红色或黑色子/父)从那里构建 2,4 并形成每个 2,4 节点。
这似乎效率很低,但到目前为止,这就是我所能想到的。
还有其他建议吗?
【问题讨论】:
标签: java data-structures red-black-tree