К справочнику

Основные алгоритмы и паттерны

Интервалы

После сортировки по началу достаточно сравнивать новый интервал с последним уже объединённым.

Сигнал задачи

Когда применять

События имеют начало и конец, важны пересечения и порядок.

Что держать в голове

  • Уметь формулировать условие пересечения интервалов.
  • Уметь объединять интервалы одним проходом после сортировки.

Сложность

  • Сортировка n интервалов занимает O(n log n), последующий линейный проход — O(n); результат может занять O(n).

Границы и ошибки

  • Сначала зафиксируйте модель границ: касающиеся [a, b] и [b, c] могут пересекаться или не пересекаться по контракту задачи.