Целочисленный набор с непрерывными областями в Java

Я хотел бы иметь реализацию набора дерева int, которая оптимизирована для множеств с множеством непрерывных областей.

Например, такое дерево может знать, что оно содержит всю область от 100 до 150 и, следовательно, поиск 120 заканчивается, когда эта область найдена.

Аналогично, если набор содержит области 500...506 и 508...600, то после добавления 507 две области объединяются.

Аналогично регионы можно разделить, если убрать число

1 ответ

Я использую SparseBitSet для аналогичной задачи.

Обратите внимание, что гуава RangeSet использования Integer не int

Другие вопросы по тегам