大きな任意のセット S とセット S_n のリストが与えられた場合、S のサブセットである S_n 内のすべてのセットを見つけます。
つまり、PowerSet(S) と S_n の交点です。
この種の計算をすばやく行うための Java ライブラリはありますか? セット S_n のリストは比較的小さく、多くても数百であり、これらのセットには多くても 10 個のアイテムが含まれます。ただし、(実行時に決定される) 任意のセットには、(1000 個のセットのうち) 20 個もの項目が含まれる可能性があるため、膨大なパワー セットがあります。
おそらくある種のオフライン計算を行って、この決定をその場で非常に迅速に(50ミリ秒以下)行う方法を探しています。
例: S = { 1, 2, 3 }
S_n = [ { 1 }, { 1, 2 }, { 5, 4, 6 } ]
結果 = [ { 1 }, { 1, 2 } ]