Я хочу объединить несколько интервалов следующим образом:
>>> ranges = [(30, 45), (40, 50), (10, 50), (60, 90), (90, 100)]
>>> merge(ranges)
[(10, 50), (60, 100)]
Я не в поле cs.Я знаю, как сделать это путем итерации, но задаюсь вопросом, существует ли более эффективный подход «сверху вниз» для их более эффективного объединения, возможно, с использованием какой-то специальной структуры данных?
Спасибо.