n個の整数間隔(たとえば、{1-5}、{4-16}、{6434-114343})を持つ巨大なデータベーステーブルがあり、どの間隔が互いに重複しているかを調べる必要があります。SOについても同様の質問がたくさんあります が、違いは、間隔ごとに、重複する間隔のセットを返す必要があることです。
------------------ A -------------------
------ B ------- ----- D -----
--------- C ---------
この例では、出力は次のようになります。A:{B,C,D} B:{A,C} C:{A,B} D:{A}
最悪の場合、すべての間隔が互いに重なり合い、サイズO(n 2)の出力が生成される可能性があります。これは単純な解決策よりも優れています(間隔のすべてのペアを比較してください)。ただし、実際には、自分の間隔のいくつかが他の間隔と重なることはわかっていますが、重なる場合は、他の5つの間隔までしか重なりません。
この情報を前提として、どのように問題を解決する必要がありますか?(最適には、データがデータベースにあるため、SQLクエリソリューションが必要ですが、通常のアルゴリズムソリューションのみが可能だと思います。)