【发布时间】:2011-07-26 06:53:14
【问题描述】:
假设我有许多对象,它们的起始值和结束值可通过某个 Comparator 进行比较。
我可以使用什么样的集合来创建对象的索引,以便给定任意值 V,我可以找到 V 介于起始值和结束值之间的所有对象?
我被难住了。
【问题讨论】:
标签: java data-structures indexing intervals
假设我有许多对象,它们的起始值和结束值可通过某个 Comparator 进行比较。
我可以使用什么样的集合来创建对象的索引,以便给定任意值 V,我可以找到 V 介于起始值和结束值之间的所有对象?
我被难住了。
【问题讨论】:
标签: java data-structures indexing intervals
见http://en.wikipedia.org/wiki/Interval_tree。您可能应该忽略首先出现在那里的复杂的“中心树”结构,而是查看“增强树”,这是执行此操作的标准方法。
【讨论】:
在某些情况下,relational database,可能有 temporal 支持,可能是一个合适的替代方案。
【讨论】: