set<Integer>
(数千)と仮定します。 デカルト積を実行したいが、重複はしない。Java7デカルトのデカルトデカルトベクトル
重複したエントリは、セット内に逆の要素があるとみなされます(つまり、<1,3>
および<3,1>
は重複とみなされます)。
どうすれば効率的に行うことができますか?
まず、私はSets.cartesianProduct(set, set)
を使用して〜22Mの要素になりますが、重複も含まれています。そのリストをもう一度繰り返してresult.contains(..)
をチェックするのは効率的ではありません。
'set'からソートできるものに切り替えるオプションがありますか? –