我正在寻找一个内存映射,其中包含支持范围查询的java友好API(不一定是java)。我们的设计还没有要求它分发。
有什么建议吗?谢谢!
答案 0 :(得分:3)
使用TreeMap。范围查询可以使用方法lowerEntry
和higherEntry
,higherKey
和lowerKey
完成。找到小于范围左端的第一个键,第一个键大于右键,并返回它们之间的所有内容。
答案 1 :(得分:1)
根据您需要的灵活性和可扩展性等,您可以考虑使用内存数据库;这会给你提供比你在这里提到的更多的能力,如果你认为你可能有更多的用途,那么它可能会很有趣。对于非常灵活的事情,你会花费很多复杂性,也可能是空间。但是你应该知道几个(免费的)java数据库提供了内存配置,包括Derby(随Java发布)。
答案 2 :(得分:1)
interval tree可能是您正在寻找的吗?