我是靠谱客的博主 粗心水杯,最近开发中收集的这篇文章主要介绍range tree java_java – 在RangeTree中建模节点,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

我目前正在实施2D范围树.我在为我的Node类提出一个似乎合理的模型(用

Java)时遇到了麻烦.

树中的节点可以具有以下任何一个:中间值,右和左子指针,子树,数据指针和/或前一个和下一个指针.

我将节点分解为三个独立的逻辑部分

> a)只有midRange值的节点 – 每个节点都有一个midRange

> b)具有左,右和子树点的节点.这表示非叶节点.

> c)没有next,prev和数据指针.这表示叶节点.

我尝试应用Composite和Decorator模式,但无济于事.

我试过制作:

>节点接口与所有可能的getter / setter,即:getMidRange,getLeft,getRight,setLeft,setRight等…

>有两个类实现接口:Node2D和LinkedNode(叶节点). Node2D做了所有事情,除了保持下一个和上一个的链接.虽然LinkedNode只保留了下一个和上一个的链接.

它是这样的,但是如果有一种更好的方法将它建模为一组类,我就会徘徊?

编辑:范围树(简短信息):在范围树中 – 所有数据都存储在Leaf节点中,并且树始终是平衡的.此外,所有叶子都处于相同的高度.此外,叶子被分类,并通过双向链表链接在一起.最后,但并非最不重要的是,每个非叶子节点都有一个子树 – 它也是一个范围树,但是叶子在下一个属性上排序(比如y,如果原始树在x上排序).

最后

以上就是粗心水杯为你收集整理的range tree java_java – 在RangeTree中建模节点的全部内容,希望文章能够帮你解决range tree java_java – 在RangeTree中建模节点所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(32)

评论列表共有 0 条评论

立即
投稿
返回
顶部