Максимальные непересекающиеся интервалы в дереве интервалов
Учитывая список интервалов времени, мне нужно найти набор максимальных непересекающихся интервалов.
Например,
если у нас есть следующие интервалы:
[0600, 0830], [0800, 0900], [0900, 1100], [0900, 1130],
[1030, 1400], [1230, 1400]
Также дается, что время должно быть в диапазоне.[0000, 2400]
Максимальный неперекрывающийся набор интервалов равен.[0600, 0830], [0900, 1130], [1230, 1400]
Я понимаю, что максимальная комплектация NP-Complete. Я хочу подтвердить, что моя проблема (с интервалами, содержащими только время начала и окончания) также является NP-Complete.
И если так, есть ли способ найти оптимальное решение в экспоненциальном времени, но с более разумной предварительной обработкой и сокращением данных. Или, если есть относительно простой в реализации алгоритм с фиксированными параметрами. Я неЯ не хочу использовать алгоритм приближения.