简单来说,我想做的是:
我有一组连续的
我希望找到一种方法,在不必遍历整个集合检查每个范围是否包含该数字的情况下查找包含给定数字的范围(更具体地说,是它所引用的对象)。这些查找将经常进行,因此速度/性能至关重要。
有人知道一个算法/方程可以帮助我吗?我用Java编写。如果需要,我可以提供更多详细信息,但我想尽量简单明了。
谢谢。
我有一组连续的
Range
对象(不重叠,它们之间没有间隙),每个对象都包含一个start
和一个end
整数,以及对另一个对象obj
的引用。这些范围的大小不固定(第一个可能是1-49,第二个可能是50-221等)。这个集合可能会变得非常大。我希望找到一种方法,在不必遍历整个集合检查每个范围是否包含该数字的情况下查找包含给定数字的范围(更具体地说,是它所引用的对象)。这些查找将经常进行,因此速度/性能至关重要。
有人知道一个算法/方程可以帮助我吗?我用Java编写。如果需要,我可以提供更多详细信息,但我想尽量简单明了。
谢谢。