0
我在一个Java 8应用程序来处理时间戳(Long
)列表的列表:库处理范围
如果用户增加了一个新的范围,应当与其他现有范围合并,就像这个伪代码:
rangeList = [100, 200], [300, 400], [500, 600], [700, 800]
newRangeList = rangeList.add([150, 550])
println(newRangeList) // Expected output: [100, 600], [700, 800]
我尝试使用的Google Guava Range class一个List
但新的时间戳范围变得出奇的复杂融合在一起。
从Java 8中使用新的LongStream而不是Range类对我没有帮助。
我认为Interval Tree将是一个很好的数据结构来处理合并效率,但我没有发现实现这一点的库。
是否有一个用于处理数字范围和合并的库?