Я использую код Set :: IntervalTree для сравнения двух наборов интервалов. Однако мне нужен дополнительный метод, который AFAIK в настоящее время не реализован в этом модуле.perl модуль для разделения/маска интервалов
Я хотел бы иметь метод, который разбивает или маскирует один интервал на два или более. Например:
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx <= [Original Interval A]
rrrrrrrrr <= [Interval B to mask against A]
xxxxxxxxxxx xxxxxxxxxxxxxxxx <= [Resulting Intervals A1 and A2]
Любые идеи, если это возможно с помощью существующего модуля Perl?
РЕДАКТИРОВАТЬ:
Для получения дополнительной информации, каждый интервал может иметь размер от 1 до 1 млрд (1E9) и в каждом интервале установить есть между 1 до 1 миллиона (1E6) интервалов.
Ваш вопрос кажется неясным: W * a * интервал *? Вы работаете над * строками *? Пожалуйста, добавьте несколько пояснений о ваших целях, некоторых деталях, образцах или уже выполненных сценариях. –
Вы видели 'Set :: IntSpan',' Set :: IntSpan :: Fast' и 'Set :: IntSpan :: Fast :: XS'? У них есть все основные операции: объединение, пересечение, разность –