У меня есть отсортированный список интервалов List1
: [1,10], [2,4], [6,8], [20,30], [24,28], [35,40], [45,50]
, где я знаю, что перекрывающиеся интервалы List2
: [2,4], [6,8], [24,28]
, из которых я хочу получить неперекрывающиеся интервалы, например: [1,2], [4,6], [8,10], [20,24], [28,30], [35,40], [45,50]
Как я могу сделать это эффективно в Python?
Моя первая мысль - создать новый список List1
разделенных интервалов для каждого перекрывающегося интервала, с которым я сталкиваюсь в List2
, и удаляю соответствующий элемент List2
(продолжайте это, пока List2
не станет пустым), но у меня возникли проблемы с тем, чтобы это работало. Это кажется отличным по своей природе от многих задач с интервалом, поэтому любое предложение будет отличным!