gpt4 book ai didi

java - 像间隔 java 一样将元素插入到 ArrayList

转载 作者:行者123 更新时间:2023-11-30 08:14:07 26 4
gpt4 key购买 nike

第一个例子:我有范围

[10, 30] [80, 100] [150, 200]

我必须插入例如[90, 120]。插入后,结果范围将是:

[10, 30] [80, 120] [150, 200]

发生这种情况是因为范围 [100, 120] 不在原始范围内,因此 100 会增加到 120,但不会添加 90,因为它在 80 到 120 的范围内。

同样,如果我将 [50, 90] 添加到原始范围,则结果范围将为

[10, 30] [50, 100] [150, 200]

这一次,下限减少到 50,扩大了下限的范围,但 90 被忽略,因为它已经在范围 [80, 100] 内。我正在尝试创建一个类来代表这个问题。

目前,我将起始数字放入 ArrayListStart [10, 80, 150] 中,将结束数字放入 ArrayListEnd [30, 100, 200] 中,然后循环他们。我比较它是否小于最小的数字等。

但是,我似乎无法让这种方法发挥作用。谁能帮我解决这个问题吗?

最佳答案

查看 Guava Range 类和 RangeSet 的实现界面。

Implementations that choose to support the add(Range) operation are required to ignore empty ranges and coalesce connected ranges.

关于java - 像间隔 java 一样将元素插入到 ArrayList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29901117/

26 4 0