gpt4 book ai didi

java - R树实现Java

转载 作者:搜寻专家 更新时间:2023-10-30 19:45:38 24 4
gpt4 key购买 nike

最近几天我一直在寻找支持无限维度(20 左右就足够了)的 R-Tree 的稳定实现。我只找到这个 http://sourceforge.net/projects/jsi/但它们只支持二维。

另一个选项是区间树的多维实现。

也许我对使用 R-Tree 或 Intervall-Tree 来解决我的问题的想法完全错了,所以我简而言之陈述问题,您可以将您对此的想法发送给我。

我需要解决的问题是某种最近邻搜索。我有一组天线和房间,每个天线都有一个整数区间。例如。天线 1,最小 -92,最大 -85。事实上,它可以表示为房间 -> 天线组 -> 天线间隔。这个想法是,每个房间在天线的维度上和每个维度的间隔上跨越 R 树中的一个盒子。

如果我得到一个包含 N 个天线的查询和每个天线的值,那么我可以将信息表示为房间中的一个查询点,并检索离该点“最近”的房间。

希望您对问题和我的想法有所了解。

最佳答案

请注意,当您拥有离散数据时,R 树可能会严重退化。您真正需要找出的第一件事是适当的数据表示,然后测试您的查询是否适用于数据的子集。

R-Trees 只会使您的查询更快。如果他们一开始就不起作用,那将无济于事。 您应该首先在不使用 R-Tree 的情况下测试您的方法。除非您处理大量数据(例如 100.000 个对象),否则内存中的线性扫描可以轻松胜过 R-Tree,尤其是当您需要一些适配器层时,因为它没有很好地与您的代码集成。

这里明显的方法是只使用边界矩形,并对其进行线性扫描。如果它们有效,您可以将 MBR 存储在 R-Tree 中以获得一些性能改进。 但如果它不适用于线性扫描,它也不适用于 R-Tree(它不会更快地工作。)

关于java - R树实现Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8456240/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com