時間間隔のリストが与えられた場合、重複しない最大間隔のセットを見つける必要があります。
例えば、
次の間隔がある場合:
[0600, 0830], [0800, 0900], [0900, 1100], [0900, 1130],
[1030, 1400], [1230, 1400]
また、時間は の範囲内にある必要があります[0000, 2400]
。
重複しない間隔の最大セットは です[0600, 0830], [0900, 1130], [1230, 1400]
。
最大セット梱包はNP-Completeということで了解しました。私の問題 (開始時間と終了時間のみを含む間隔) も NP-Complete であるかどうかを確認したいと思います。
もしそうなら、指数時間で最適な解を見つける方法はありますが、よりスマートな前処理とデータの刈り込みが必要です。または、固定パラメーターの扱いやすいアルゴリズムを実装するのが比較的簡単な場合。私は近似アルゴリズムに行きたくありません。